Vraag & Antwoord

Webprogrammeren & scripting

Foute letterweergave

4 antwoorden
  • Aangezien ik het sterke vermoeden heb dat dit een PHP kwestie is (al weet ik dat niet zeker) Heb ik besloten om hem maar in dit forum te posten. Ik ben bezig met het maken van een Wordpress template. Nu is het geval dat de letterweergave op het hele weblog in orde is, behalve in de door mij gemaakte template. Zodra er een accent wordt gebruikt, wordt er een '?' geparsed. Uiteraard heb ik als eerste de header gechecked, maar zoals verwacht zit het 'm daar niet in. Dit omdat dezelfde header boven zowel mijn template, als alle andere pagina's (waar het wel goed werkt) wordt geplakt. Ik gebruik dus dezelfde header en ik lees precies dezelfde tekst uit precies dezelfde database. (Laat ik b.v. een reactie van iemand in mijn template verschijnen, dan ziet die reactie er via de 'normale" weg prima uit, maar niet via mijn template). Het enige wat ik doe is de tekst uit de database lezen en die op mijn pagina weergeven. Ik haal er verder niks bijzonders mee uit, (maar wellicht is dat juist wel de bedoeling, de WP code is me echter te ondoorgrondelijk om vast te stellen hoe die het aanpakt) De collation in de database staat op: utf8_general_ci De header die Wp boven alle templates plakt is: [code:1:3b68e453ad] <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="nl-NL"> <head profile="http://gmpg.org/xfn/11"> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> [/code:1:3b68e453ad] Wat ik doe in mijn script is: [code:1:3b68e453ad] // Perform query $sql = "SELECT comment_content FROM wp_comments WHERE comment_author = '$name';"; $result = mysql_query($sql); while ($row = mysql_fetch_array($result)) { $comment = $row['comment_content']; echo "$comment "; } [/code:1:3b68e453ad] (Ja, het is de bedoeling dat alles in de browser achter elkaar wordt geplakt :-)) Aangezien ik geen fout kan ontdekken in de HTML code en omdat de vraagtekens al in de code staan (en het dus geen kwestie is van tekens die goed in de code staan maar toch fout worden weergegeven) vermoed ik dat de fout in mijn PHP zit.
  • het moet wel een char encoding probleem zijn.. leesvoer: http://www.byte.nl/docs/Website-Character-Encoding.html
  • Ik sluit me aan bij Teacher. Wat mij ooit [url=http://forum.computertotaal.nl/phpBB2/viewtopic.php?t=187025&highlight=utf8]heeft geholpen[/url] is [url=http://www.bluetwanger.de/blog/2006/11/20/mysql-and-utf-8-no-more-question-marks/]dit artikel[/url]. Misschien helpt het. Mocht dat niet werken, probeer dan de template eens op te slaan vanuit WordPress zelf (wel eerst de goede rechten geven) zodat de template zelf ook als utf-8 wordt opgeslagen, iets dat Windows-programma's nog wel eens fout willen doen. Succes! - Bas
  • Ik heb me er gemakkelijk vanaf gemaakt: Ik heb [url=http://se2.php.net/manual/en/function.htmlentities.php]htmlentities[/url] gebruikt en het werkt prima :wink:

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.