Visualizzazione dei risultati da 1 a 10 su 10

Discussione: sostituire " con ""

  1. #1

    sostituire " con ""

    ciao a tutti, sto creando un sistema in php che partendo da un database mysql esporti i dati in un file csv
    il problema si verifica quando in un dato c'è il campo " (doppio apice) perché nel linguaggio csv significa che è finito quel campo
    ora mi servirebbe fare in modo che se in un campo del database è presente il campo ", venga scritto nel file csv come "" (due doppi apici)
    sarebbe possibile farlo? esiste qualche funzione in php che fa già questo? grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    323
    Usa str_replace();
    Maggiorni info a questo link http://php.net/manual/en/function.str-replace.php

  3. #3
    ops... non si capisce bene come funzione...
    potresti spiegarmi al volo?

  4. #4
    Utente di HTML.it L'avatar di hyde82
    Registrato dal
    Feb 2010
    Messaggi
    243
    potrebbe esserti utile str_replace.....ma pensavo:Hai un database dove ci sono campi senza caratteri di escape?
    se è cos' allora potresti tentare anche questa strada :.Sostituirli direttamente con una query del tipo:

    UPDATE nome_tabella set nome_campo=(REPLACE(nome_campo, "carattere da sostituire", "carattere sostituto"))
    fammi sapere

  5. #5
    il database non posso modificarlo, devo solo modificare il dato prima di scriverlo nel csv
    in merito alla funzione str_replace ho visto che funziona così:
    codice:
    str_replace(cerca, sostituisci ,dove_cercare)
    dove nell'esempio
    codice:
    echo str_replace("mela", "pera", "Paolo mangia la mela");
    l'output sarà "Paolo mangia la pera"

    il problema sta nel fatto che devo sostituire il doppio apice " con un doppio doppio apice ""

    pensate che possa funzionare così?
    codice:
    echo str_replace(""", """", $variabile);
    oppure il mix di doppi apici incasina tutto?

  6. #6
    Originariamente inviato da ratlook
    pensate che possa funzionare così?
    codice:
    echo str_replace(""", """", $variabile);
    oppure il mix di doppi apici incasina tutto?
    eh si... incasina.
    codice:
    echo str_replace('"', '""', $variabile);
    ma ratlook, non si sostituisce un " con "" ma, si deve premettere il carattere di escape \ per definire che "quel" carattere non e' di controllo ma e' un valore stringa.

    $variabile = addslashes($variabile);

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    Originariamente inviato da piero.mac
    ma ratlook, non si sostituisce un " con "" ma, si deve premettere il carattere di escape \ per definire che "quel" carattere non e' di controllo ma e' un valore stringa.

    $variabile = addslashes($variabile);
    no guarda, in pratica devo estrarre dei valori da un database ed creare un file csv
    per la separazione dei campi il csv prevedere l'utilizzo del doppio apice e quando il doppio apice è incluso nel valore del campo, per non chiudere il campo bisogna sostituirlo con un doppio doppio apice

    comunque ora provo con
    codice:
    echo str_replace('"', '""', $variabile);
    e ti faccio sapere, grazie tante per ora!

  8. #8
    ciao piero, visto che sei così disponibile ne approfitto per chiederti un altra cosa...

    se un campo nel database che prevedere degli 'accapo' cioè:

    codice:
    $descrizione prodotto = 'Il prodotto è disponibile in varie alternative tra cui:
    - prima alternativa
    - seconda alternativa
    - terza alternativa'
    c'è un modo per sostituire tutti gli 'accapo' con un
    ?

  9. #9
    Usa questa:

    Codice PHP:
    nl2br($testo); 

  10. #10
    ho provato ma resta uguale...

    in pratica nel campo descrizione del database ho le descrizioni dei prodotti formattate in html in questo modo:

    codice:
    Compatibile con tutta la linea di staffe cod. B05xxx<hr>Descrizione: Supporto a parete per videoproiettori ad ottica corta!
    
    
    
    L'utilizzo di un proiettore grandangolare ad ottica corta (short-throw) impedisce che l'ombra del conferenziere copra lo schermo e, allo stesso tempo, che i suoi occhi siano abbagliati dalla luce diretta. Questo supporto a parete ne costituisce il complemento ideale: il sistema di fissaggio universale permette non solo di sospendere qualsiasi modello di proiettore, ma anche di ruotarlo, inclinarlo e farlo scorrere lungo l'intera lunghezza del braccio.
    
    
    
    Principali caratteristiche:
    
    [*]Robusta struttura completamente regolabile
    [*]Braccio di sospensione a parete da 135cm realizzato in alluminio estruso
    [*]Scorrimento del braccio e posizionamento del proiettore a qualsiasi distanza
    [*]Verniciatura in polveri epossidiche in colore nero satinato
    [*]Fissaggio tramite una piastra sagomata che consente il passaggio di cavi
    [*]Serie di asole per sganciare rapidamente il supporto e consentire ispezioni di manutenzione
    [*]Inclinazione (± 20°) e rotazione (360°) del piano verticale grazie allo snodo centrale
    
    [*]Ancoraggio del proiettore mediante quattro braccetti snodabili estensibili fino a 15cm
    [*]Braccetti universali in grado di raggiungere ogni punto di fissaggio del proiettore
    [*]Allineamento dei braccetti sullo stesso livello (sistema di regolazione con ghiera e molla)
    [*]Inclusi il set di viti (M3, M4 e M5), chiave doppio uso e manuale di montaggio in dotazione
    [*]Portata massima 15 Kg<hr>Descrizione: Nuova linea di supporti per monitor Plasma e TV LCD
    
    
    Pratica a funzionale serie di supporti per monitor e tv lcd compatibile con tutti i prodotti in commercio grazie al fissaggio universale VESA adottato.
    La completezza di questi supporti universali permette di risolvere le più disparate problematiche applicative.
    
    
    La robusta struttura in lamiera di acciaio permette di supportare carichi considerevoli (rif. tabella).
    in pratica vorrei che tutti gli "accapo" si togliessero e le descrizioni diventassero tutte un unico grande rigo tipo questo:

    codice:
    Compatibile con tutta la linea di staffe cod. B05xxx<hr>Descrizione: Supporto a parete per videoproiettori ad ottica corta!
    
    L'utilizzo di un proiettore grandangolare ad ottica corta (short-throw) impedisce che l'ombra del conferenziere copra lo schermo e, allo stesso tempo, che i suoi occhi siano abbagliati dalla luce diretta. Questo supporto a parete ne costituisce il complemento ideale: il sistema di fissaggio universale permette non solo di sospendere qualsiasi modello di proiettore, ma anche di ruotarlo, inclinarlo e farlo scorrere lungo l'intera lunghezza del braccio.
    
    
    Principali caratteristiche:
    [*]Robusta struttura completamente regolabile[*]Braccio di sospensione a parete da 135cm realizzato in alluminio estruso[*]Scorrimento del braccio e posizionamento del proiettore a qualsiasi distanza[*]Verniciatura in polveri epossidiche in colore nero satinato[*]Fissaggio tramite una piastra sagomata che consente il passaggio di car [*]Serie di asole per sganciare rapidamente il supporto e consentire ispezioni di manutenzione[*]Inclinazione (± 20°) e rotazione (360°) del piano verticale grazie allo snodo centrale[*]Ancoraggio del proiettore mediante quattro braccetti snodabili estensibili fino a 15cm[*]Braccetti universali in grado di raggiungere ogni punto di fissaggio del proiettore[*]Allineamento dei braccetti sullo stesso livello (sistema di regolazione con ghiera e molla)[*]Inclusi il set di viti (M3, M4 e M5), chiave doppio uso e manuale di montaggio in dotazione[*]Portata massima 15 Kg<hr>Descrizione: Nuova linea di supporti per monitor Plasma e TV LCD
    
    Pratica a funzionale serie di supporti per monitor e tv lcd compatibile con tutti i prodotti in commercio grazie al fissaggio universale VESA adottato.
    La completezza di questi supporti universali permette di risolvere le più disparate problematiche applicative.
    
    La robusta struttura in lamiera di acciaio permette di supportare carichi considerevoli (rif. tabella).
    sarebbe possibile farlo? come? grazie tante!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.