sql >> Databasteknik >  >> RDS >> Mysql

Grekiska teckenkodning fungerar i HTML men inte i PHP

Även om det låter väldigt konstigt att din mysql-data matas ut korrekt där php-strängar misslyckas vid kodning, så skulle jag försöka lösa ditt problem vara att dela upp problemet i steg för att försöka identifiera var denna felkodning genereras!

Först och främst bör du försöka ställa in din default_charset till utf-8 i filen php.ini, vilket görs så här :

default_charset = "utf-8";

Om du inte kan göra det på grund av leverantörsbegränsningar kanske du fortfarande kan ändra värdet vid körning med ini_set funktion!

Du vill också se till att webbservern är inställd på att mata ut utf-8-kodade filer också! I Apache kan detta göras både i httpd.conf eller med hjälp av htaccess-filer :

AddDefaultCharset UTF-8

Vid det här laget om allt misslyckas, ändå... försök att använda php-rubriker och relativ html-teckenuppsättning :

<?php header("content-type: text/html;charset=utf-8") ?>
<!doctype>
<html>
    <head>
        <meta charset="utf-8">
    </head>
    <body>
        <?php echo "α β γ δ ε ϝ ϛ ζ η θ ι κ λ μ ν ξ ο π ϟ ϙ ρ σ τ υ φ χ ψ ω ϡ" ?>
    </body>
</html>

Det är dock väldigt viktigt att dina filer sparas med en lämplig kodning också (utf-8 är nästan alltid det bättre valet, det hjälper till att förhindra problem ganska mycket). Om du sparade filer med annan kodning än utf-8, förstör dem och skapa nya av deras gamla innehåll. Ibland kan redigerare inte riktigt byta kodning ordentligt när filen väl har skapats, även om notepad++ i allmänhet klarar sig bra på det; använd bara converto to inte encode in funktion!

Om det fortfarande inte fungerar, även om jag hoppas att det gör det nu, kan du kolla in några andra php-alternativ som mb_detect_encoding , mb_convert_encoding , htmlentities och htmlspecialchars för att åtgärda problemet!




  1. Hur har man fullständig offlinefunktionalitet i en webbapp med PostgreSQL-databas?

  2. pdo infoga bild i databasen direkt - infogar alltid BLOB - 0B

  3. Undvik dubbla citattecken med variabel inuti HTML-eko

  4. hur man ställer in standardvärde för texttyp i mysql