Permalänk
Medlem

Visa ÅÄÖ från databas i PHP.

Har följande kod men kan inte få den att visa ÅÄÖ.

Har sökt på nätet men tipsen hjälper inte.

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>Koppla till databas</title> </head> <body> <table width="100%" border="1" bordercolor="lighblue" background="IMG/droppar.jpg" style= "color: white"> <thead style="color: yellow"> <tr> <th>Titel</th> <th>Kommentar</th> </tr> </thead> <?php header('Content-Type: text/html; charset=utf-8'); $dbh = new PDO('mysql:host=localhost;dbname=spel', 'root', ''); $sql = "SELECT title, comment FROM games"; $smtp = $dbh -> prepare($sql); //Förbereder att utföra SQL. $smtp -> execute(); //Kör SQL foreach($smtp as $heroData){ echo '<tbody>'; echo '<tr>'; echo '<td align="center">',$heroData['title'],'</td>'; echo '<td align="center">',$heroData['comment'],'</td>'; echo '</tr>'; echo '</tbody>'; } ?> </table> </body> </html>

Permalänk
Medlem

Vad har du för encoding i databasen?

Permalänk
Medlem

Testa att lägga till charset=utf8" i din connection string till db.

Permalänk
Medlem

Verifiera att din databas (dina tabeller) har:
CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci

Då har du stöd för ÅÄÖ och även smily etc. Vill du inte ha det senare håll dig till UTF8 ci (Case insensitive)

Permalänk
Medlem
Skrivet av martin79:

Verifiera att din databas (dina tabeller) har:
CHARSET = utf8mb4
COLLATE = utf8mb4_unicode_ci

Då har du stöd för ÅÄÖ och även smily etc. Vill du inte ha det senare håll dig till UTF8 ci (Case insensitive)

Hur ser man det eller lägger till det? Använder MySQL.

Permalänk
Medlem
Skrivet av noMad17:

Vad har du för encoding i databasen?

Vet inte.

Permalänk
Medlem

$dbh = new PDO('mysql:host=localhost;dbname=spel; charset=utf8mb4', 'root', '');

Byt ut din nuvarande PDO till detta och testa.
Du kan byta till utf8 om du vill.