Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536

    problema con caratteri accentati e HtmlEntities

    Ciao

    inserisco del testo in un campo di testo ma quando le lettere sono accentate tipo:

    àèòì

    mi ritrovo nel db (e anche visualizzate) lettere strane tipo èè

    Ho fatto una prova in uno script a parte con

    HtmlEntities()

    e le lettere accentate vengono sostituite con i rispettivi egrave; ecc ecc (vedo dal sorgente pagina in firefox)

    lo uso nel progetto che mi interessa:

    Codice PHP:

    ......

        

    $titolo HtmlEntities($titolo); 
       
        
    $min"tb_" $nome;
        
    // aggiorno il database
        
    $query "INSERT INTO images (Titolo,Descrizione,Nome,Tipo,thumb) VALUES('$titolo','$descrizione','$nome','$tipo','$min')";
        
    $res = @mysql_query($query) or die (mysql_error());

    ...... 
    e nel campo db mi ritrovo:

    Ãèì&Atilde

    al posto di à è ì ecc

    come mai?

    Grazie

  2. #2
    Puoi provare con una funzioncina di preinserimento nel db così tagli la testa al toro

    function insertIntoDb($stringa){
    $stringa = str_replace ("à", "à", $stringa);
    $stringa = str_replace ("è", "è", $stringa);
    $stringa = str_replace ("ì", "ì", $stringa);
    $stringa = str_replace ("ù", "ù", $stringa);
    $stringa = str_replace ("ò", "ò", $stringa);
    return $stringa;
    }

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2002
    Messaggi
    536
    Originariamente inviato da simonsaint
    Puoi provare con una funzioncina di preinserimento nel db così tagli la testa al toro

    function insertIntoDb($stringa){
    $stringa = str_replace ("à", "à", $stringa);
    $stringa = str_replace ("è", "è", $stringa);
    $stringa = str_replace ("ì", "ì", $stringa);
    $stringa = str_replace ("ù", "ù", $stringa);
    $stringa = str_replace ("ò", "ò", $stringa);
    return $stringa;
    }
    avevo già provato ma non funziona.

    così adesso ho risolto:

    $titolo = HtmlEntities($titolo, ENT_COMPAT, "UTF-8");

    Ciao e grazie ugualmente.

    ps: stranamente in un' altra pagina dove carico ugualmente questi caratteri (e senza la mia soluzione sopra) nel db non ho problemi....misteri.

  4. #4
    function insertIntoDb($stringa){
    $stringa = str_replace ("à", "à", $stringa);
    $stringa = str_replace ("è", "è", $stringa);
    $stringa = str_replace ("ì", "ì", $stringa);
    $stringa = str_replace ("ù", "ù", $stringa);
    $stringa = str_replace ("ò", "ò", $stringa);
    return $stringa;
    }
    Ma perchè questi caratteri accentati vengono sostituiti con se stessi??

  5. #5
    ahahhahahahhahahah

    me ne sn accorto solo adesso che il forum converte automaticamente & a grave & e grave, facendo già vedere è à ehhehehehe, strano che non è stata detta prima la cosa. Il codice era giusto, il forum me l'ha convertito
    Cogli l'attimo o non ce ne saranno altri uguali mai.

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.