Via onderstaande code lukt het mijn niet speciale characters zoals een e met accent
correct te lezen uit een txt file. Heeft iemand een oplossing? Alvast bedankt.
Elk karakter, bijvoorbeeld de letter "A" kan verschillende representaties hebben op byte-niveau (in het geheugen is dit een reeks van nullen en enen). Deze encodering wordt ook wel character encoding genoemd.
Mijn vermoeden is dat de standaard character encoding (die je verder niet specificeert in je HTML-document middels een meta-tag noch in PHP via een header() aanroep) in je HTML-document niet aansluit bij de character encoding van het tekstbestand. Beide zouden eigenlijk vastgelegd moeten zijn en/of worden.
Daarnaast is PHP meestal "doof" voor dit soort nuances en zul je dus zelf dingen expliciet moeten regelen.
Verder zullen we moeten weten:
- hoe notepad++ bestanden opslaat (met welke character encoding)
- op welke default character encoding jouw specifieke browser is ingesteld (ingeval je niet zelf expliciet de juiste character encoding instelt via HTML of PHP of allebei)
EDIT: over MySQL: dit oplossen met htmlspecialchars() is zeer gevaarlijk en je lost daarmee het probleem niet op (en eigenlijk is dit een pleister op de verkeerde plek).
Mijn ICT opleiding toen bestond uit DB2, SQL, COBOL, PL1, Mainframe, en dergelijke...
Er was nog geen sprake van webdesign of web programmatie.
Deze huidige programmeertalen/technieken leer ik momenteel zelf
(HTML, JAVASCRIPT, PHP, MySQL, CSS, ...)
[size=xsmall]Toevoeging op 21/07/2017 13:59:28:[/size]
Thomas, is htmlspecialchars een verkeerde manier naar mysql toe?
Zoals gezegd, ik leer het allemaal via mezelf, heb geen schoolopleiding
php genoten.
Kan je me uitleggen waarom het geen goede manier is, en hoe het dan wel moet?
Bij mij werkt de code, na vele testen, in ieder degelijk...
Dankje.
Filip
[size=xsmall]Toevoeging op 21/07/2017 14:45:44:[/size]
Opgelost.
.txt file gewoon openen met notepad++
Dan, menu, karakterset, converteren naar UTF-8, save.
Daarna niets speciaals nodig in php om special characters te lezen...
Thanks all for advise.
ps: Thomas, kan je me nog uitleggen waarom htmlspecialchars uit den boze zou zijn?