Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di vegasy
    Registrato dal
    Dec 2010
    Messaggi
    47

    non riesco a ripulire i caratteri speciali

    Ciao a tutti, non trovo una soluzione al mio problema.

    il sito di riferimento è www.fdlcasa.com

    come potete notare, appaiono i caratteri con il ?.
    premetto che all'interno del db, ho controllato e al posto del ? ci sono i caratteri originali (p.e. nel db il testo originale è proprietà e nel sito leggo propriet?)

    ho provato ad usare la funzione htmlentities().
    la cosa è questa: se alla funzione, le passo una stringa scritta da me - cioè una stringa che non proviene da un risultato della query - i caratteri me li corregge.
    Se le passo la stringa estratta dal risultato della query invece il testo mi appare "corrotto", come potete notare dal sito.
    E' come se il testo che proviene dalla query fosse corrotto non non più correggibile (non so se mi sono spiegato)

    Ovviamente in locale questo non succede, anzi, non è neanche necessario che usi la funzione htmlentities()

  2. #2
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Il tuo è un problema legato alla codifica dei caratteri: salvi il testo con l'encoding X e lo vai a leggere con l'encoding Y.
    Non risolvi questo problema semplicemente trasformando i byte che non hanno corrispondenza nella tabella dei caratteri della codifica che usi per leggere quel testo con delle entità html (ascii). Se scrivi in curdo vai a leggere in curdo, non in polacco.

    In cima a questa sezione trovi una discussione che tratta l'argomento. Sul web ne trovi qualche altro migliaio.

  3. #3
    Utente di HTML.it L'avatar di m4rko80
    Registrato dal
    Aug 2008
    residenza
    Milano
    Messaggi
    2,654
    A db probilmente hai un encoding che non è uft-8. Se vai sul sorgente pagina e setti a windows-1252 per esempio si sistema.
    Dalla console di chrome / pulsante impostazioni: Strumenti -> altri strumenti -> codifica ... puoi vedere come cambia

  4. #4
    Utente di HTML.it L'avatar di vegasy
    Registrato dal
    Dec 2010
    Messaggi
    47
    Quote Originariamente inviata da .Kurt Visualizza il messaggio
    Il tuo è un problema legato alla codifica dei caratteri: salvi il testo con l'encoding X e lo vai a leggere con l'encoding Y.
    Non risolvi questo problema semplicemente trasformando i byte che non hanno corrispondenza nella tabella dei caratteri della codifica che usi per leggere quel testo con delle entità html (ascii). Se scrivi in curdo vai a leggere in curdo, non in polacco.

    In cima a questa sezione trovi una discussione che tratta l'argomento. Sul web ne trovi qualche altro migliaio.
    intendi a livello di db?
    nel db originale ho "utf8_general_ci"
    nel db dove ho spostato tutto e ci sto lavorando è "utf8_general_ci"

  5. #5
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    Assicurati di aver impostato il charset corretto quando ti vai a connettere al database.

  6. #6
    Utente di HTML.it L'avatar di vegasy
    Registrato dal
    Dec 2010
    Messaggi
    47
    scusate l'ignoranza, per questa cosa come devo fare?

  7. #7
    Utente di HTML.it L'avatar di .Kurt
    Registrato dal
    Jul 2007
    Messaggi
    654
    In cima a questa sezione trovi una discussione che tratta l'argomento.
    http://forum.html.it/forum/showthrea...readid=2901187

  8. #8

  9. #9
    Utente di HTML.it L'avatar di vegasy
    Registrato dal
    Dec 2010
    Messaggi
    47
    adesso invece del ? ho un'altro carattere (una A maiuscola con l'umlaut - o come si dice)
    >.<

    EDIT: grazie per la dritta dell'injection, non sono tanto esperto

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2014
    Messaggi
    194
    Prova ad usare mysql_real_escape_string quando prepari le variabili.

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.