Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1

    Inserimento dati da form a mySql con jquery

    Ciao a tutti.
    Uso questo metodo http://net.tutsplus.com/tutorials/ja...-using-jquery/ per inviare i dati ad una pagina php che si occupa di inserirli in un database.
    Il sistema funziona correttamente.
    Il problema nasce quando nei campi vengono inseriti caratteri accentati (à,è,ì,ò,ù).
    Nel database in questo caso vengoo salvati caratteri strani.
    Ho provato ad usare urlencode, ma ad esempio la parola però me la salva nel database come per%C3%B2, mentre invece la versione giusta dovrebbe essere per%F2.
    Ho provato ad usare htmlentities (configurando anche il set di caratteri), ma nulla da fare.

    Avete soluzioni?

  2. #2
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    rawurldecode( $valore ) ;

  3. #3
    Con rawurldecode, il testo per%C3%B2 mi stampa a video però

  4. #4
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Controlla di aver settato correttamente il file con codifica utf-8 e devi settare pure la relativa colonna del database a utf-8.

  5. #5
    Ma perchè devo usare tassativamente UTF-8 e non ISO-8859-1?

  6. #6
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Queri caratteri sono caratteri multibyte e se li vuoi usare cosi' come sono devi usare utf8 altrimenti devi ricodificarli in altra codificia ad esempio con la funzione utf8_decode() oppure
    con html_entities() o altra funzione di decodifica per portarli caratteri a singolo byte.

  7. #7
    Ho usato utf8_decode e mi visualizza il tutto correttamente.
    Nel db ovvio salva con caratteri strani.
    Grazie

  8. #8
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    devi fare attenzione alla codifica che e' applicata alla colonna in cui vai a stipare i dati e devi altresi' controllare bene cosa restituisce la funziona utf8_decode perche' puo' esser eche ca dofica della stringa risposta nn sia cmq compatibile con la codifica della colonna della tabella.

  9. #9
    Tutte le vocali accentate vengono inserite con caratteri strani, ma, richiamate con la funzione utf8_decode, acquistano il significato che noi normalmente attribuiamo a quelle lettere (à,è,ì,ò,ù) e stampate a video di conseguenza.

  10. #10
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    e' un problema di codifica, o della tabella o della pagina dove vengono stampate.

    Fai attenzione se un utente passa caratteri giapponesi, cirillici o altro potrebbe nn andarti piu' cosi' bene, devi mantenere le stesse codifiche sia sulle pagine web come formato di file che come codifica nei metatag e quindi anche nelle relative colonne delle tabelle del database.

    Per il resto php fornisce funzioni come la utf8_decode o come funzioni "MB" ossia multibyte per le operazioni tipo strpos hai la funzione mb_strpos etc...

    Io dal canto mio oramai utilizzo solo ed esclusivamente la codifica "utf8 - general" per default dappertutto.
    Cosi' ne uso una solamente e so che non ho mescolanze nelle codifiche delle stringhe.

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.