Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189

    problema accentate, htmlentities

    Su un server con PHP 5.2.4 uso degli script, come ho sempre fatto
    quando prendo il risultato da MySql e faccio un htmlentities su un accentata la à diventa Ã

    non capisco dove sia il problema

    il testo nel campo del DB l'ho inserito a mano e tramite PHP myadmin lo vedo correttamente come à...

    se non faccio l'htmlentities mi stampa correttamente una à

  2. #2
    Devi definire il set di carattere cioè il charset nel tag meta apposito

    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">

    Ti consiglio di definire il charset del db come UTF-8 generic e il charset della pagina html come ISO-8859-1.

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189
    ciao, il meta è già settato correttamente... mie poi venuto un idea per vedere se centrava mysql, di scrivere direttamete il codice nella pagina

    prov&agrave;
    lo visualizzo con la à accentata

    echo htmlentities("provà");
    lo vedo così prov�

    nel anche nel sorgente della pagina lo trovo come
    prov�

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189
    il primo provà
    sarebbe prov & agrave;

    e si legge correttamente

    (ho dovuto mettere gli spazi per non farlo trasformare)

  5. #5
    Con il charset impostato a ISO-8859-1 non dovrebbe darti nessun problema.
    La pagina HTML probabilmente non è stata salvata con il charset adeguato. Prova a salvarla in UTF-8.

    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189
    forse mi son spiegato male.

    se creo una pagina con questo codice, vedo la parola con l'accentata ovvero provà

    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <
    META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
    <
    html>
        <
    head>
            <
    title>prova ISO</title>
        </
    head>
        <
    body>
        
    prov&agrave;

        </
    body>
    </
    html
    se invece faccio una pagina con questo codice vedo prov?

    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-1">
    <html>
        <head>
            <title>prova ISO</title>
        </head>
        <body>
        <? echo htmlentities("provà"); ?>

        </body>
    </html>
    è come se la funzione htmlentities usasse un encoding differente

    spero che l'html non venga interpretato, perchè non so come inserirlo senza che succeda

    pagina salvata con char set ISO-8859-1

    nel PHP info sotto MySQL ho una riga
    mysql.connect_charset no value no value
    che in locale non ho... non che è quella che incasina

  7. #7
    Non hai capito ciò che dico.
    Lascia perdere il charset indicato nel meta.
    Ti sto dicendo di controllare nel tuo text-editor o dreamweaver della situazione che le pagine vengano salvate in UTF-8.


  8. #8
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    189
    ho controllato... erano ecodati iso, ho risolto ma anche encodando tutto ISO (quello che descrivo sotto) non funzionava. Solo in utf8

    ho aperto i file nell'editor e dato encoding utf-8

    nella pagina
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

    in MySQL le tabello le ho settate a
    utf8_general_ci

    come prima query dopo l'apertura della connessione eseguo
    SET NAMES utf8

    in PHP
    htmlentities($pippo,ENT_QUOTES,'UTF-8')

    così funziona
    ho trovato qualche indicazione in questo articolo dove vi citano

    articolo

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.