Vreemde tekens veranderen na query
Ik heb de volgende tabel in mijn database:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
CREATE TABLE `berichten` (
`id` INT(8) NOT NULL AUTO_INCREMENT ,
`verzender` INT(8) NOT NULL ,
`ontvanger` INT(8) NOT NULL ,
`bericht` VARCHAR(1000) NOT NULL ,
`datum` INT(15) NOT NULL ,
PRIMARY KEY(`id`)
);
`id` INT(8) NOT NULL AUTO_INCREMENT ,
`verzender` INT(8) NOT NULL ,
`ontvanger` INT(8) NOT NULL ,
`bericht` VARCHAR(1000) NOT NULL ,
`datum` INT(15) NOT NULL ,
PRIMARY KEY(`id`)
);
Het gaat hier dus om een berichtensysteem, maar het probleem is dat als iemand een bericht met bijvoorbeeld Griekse tekens stuurt:
δεσπότης
komt het zo in de database te staan:
δεσπότης
en zo leest de persoon die het ontvangen heeft dus ook.
Weet iemand hier een oplossing voor?
groeten, Computer
Edit:
Ik zie net dat PHPhulp dit ook niet goed doet. Maar PHPhulp geeft weer iets anders dan mijn script, namelijk:
δεσπότης
in plaats van:
δεσπότης
Gewijzigd op 01/01/1970 01:00:00 door Computer
Nu kan je je hele site in unicode zetten, of je decodeert ze naar ascii.
Probeer eens, bij het lezen van de data iets als
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
while ($row = ...) // zelf aanvullen
{
$row['bericht'] = utf8_decode($row['bericht']);
echo '<div>'. $row['bericht'] .'</div>'; // zelf aanpassen
}
?>
while ($row = ...) // zelf aanvullen
{
$row['bericht'] = utf8_decode($row['bericht']);
echo '<div>'. $row['bericht'] .'</div>'; // zelf aanpassen
}
?>
Helpt dat?
Ik heb weinig ervaring met andere alfabetten dan het onze, dus ik weet niet of het in jouw geval zal helpen.
????????
in plaats van:
δεσπότης
Allemaal vraagtekens :S
Ik zoek nog even verder
Is de content type wel utf 8?
Tsja, zoals in mijn onderschrift staat ben ik een newbie... Ik heb nooit iets ingesteld, dus ik denk gewoon de standaard? Hoe kan ik dit controleren?
(sorry voor de bump, maar dat mag na 24 uur)
[edit:]
volgens mij toch verkeerde gedachte, kijk hier eens:
http://www.atto.nl/utf8/
misschien kan je er wat mee.
Gewijzigd op 01/01/1970 01:00:00 door Bas IJzelendoorn
Code (php)
1
2
2
ALTER DATABASE `mijnDatabase` COLLATE utf8_unicode_ci
ALTER TABLE `berichten` COLLATE utf8_unicode_ci
ALTER TABLE `berichten` COLLATE utf8_unicode_ci
Maar dat helpt niks. Ik ga die website nog even verder doorlezen en probeer dan wat nieuws.
De fout is opgelost, bedankt voor jullie hulp! :D
Graag even vermelden voor je medeforumbezoekers.
Dat hij de meta tag er niet goed op had staan,, als ik het goed begrijp?