Visualizzazione dei risultati da 1 a 8 su 8

Discussione: gestire l'apice

  1. #1

    gestire l'apice

    ciao a tutti
    dovrei gestire l'inserimento e l'estrazione dal database di campi che possono contenere gli apici
    come potrei fare? grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    86
    Usa la funzione "string mysql_escape_string ( string $unescaped_string )" per inserire i valori nel db (nel nostro caso, mysql).

    Poi dovresti essere in grado di leggere normalmente i valori quali anche l'apice.

    Prova e fammi sapere.

  3. #3
    allora, anche qui č bene che spieghi meglio!
    per farti l'esempio contreto segui questi passaggi:

    1) vai qui ed aggiungi il prodotto al carrello: http://www.lampada-videoproiettore.i...=XR-10S&tipo=5

    2) appena visualizzi il carrello fai come se volessi procedere

    3) inserisci dei campi a caso come indirizzi di fatturazione/spedizione che contengano il carattere '

    4) conferma e poi clicca su modifica indirizzi (come se volessi tornare indietro)

    noti che nei campi dov'era presente l'apice, č stato aggiunto il campo \
    come posso risolvere? grazie!

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    86
    Quando leggi un file elaborato con gli "escape" (come nel tuo caso) dopo devi utilizzare la funzione:

    codice:
    string stripslashes ( string $str )
    sulla stringa che intendi visualizzare.

  5. #5
    Brutta abitudine quella di inserire a database l'escape dell'apice.
    L'inserimento dei dati, dopo aver aperto la connessione, fallo con:
    Codice PHP:
    apri la connesisne al db...
    $campo1 mysql_real_escape_string($_POST["campo1"]);
    $query "INSERT INTO... 
    In questo modo i dati vengono inseriti "puliti" e non hai bisogno di filtrarli quando li richiami e stampi a video.

  6. #6
    Originariamente inviato da Corwin86
    Quando leggi un file elaborato con gli "escape" (come nel tuo caso) dopo devi utilizzare la funzione:

    codice:
    string stripslashes ( string $str )
    sulla stringa che intendi visualizzare.
    intendi per inserire il dato dentro la casella di testo dove all'interno viene visualizzata?
    questa funziona cosa fā esattamente? eliminando gli escape non si rischia di inserire un valore "pericoloso" nel database?

  7. #7
    Originariamente inviato da Dirk Pitt
    Brutta abitudine quella di inserire a database l'escape dell'apice.
    L'inserimento dei dati, dopo aver aperto la connessione, fallo con:
    Codice PHP:
    apri la connesisne al db...
    $campo1 mysql_real_escape_string($_POST["campo1"]);
    $query "INSERT INTO... 
    In questo modo i dati vengono inseriti "puliti" e non hai bisogno di filtrarli quando li richiami e stampi a video.
    cioč io non capisco se č meglio:

    - inserire nel database i dati con l'escape e fare in modo che quando il dato viene richiamato per essere visualizzato dentro la casella di testo, viene eliminato l'escape (solo per essere visualizzato). in questo caso poi, nel caso in cui fosse modificata la casella di testo per aggiornare il valore sul database, devo usare una funzione per rimettere l'escape nel db

    - non inserire alcun escape nč in scrittura, nč in lettura sul db

  8. #8
    Inserisci il dato pulito (ovvero filtrato dalla funzione che ti ho consigliato), richiami il dato pulito nella casella di testo. Quando fai l'update, filtri nuovamente il nuovo valore del campo con la stessa funzione di cui sopra.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.