PHP lees textfile specialchars
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.
<html>
<head>
</head>
<body leftmargin="30" bgcolor="#e5dfe0">
<font face="Verdana" size="2" color="darkblue">
Code (php)
</body>
</html>
En hoe zien die plaatsnamen er dan uit in het bestand en op je scherm?
Gewijzigd op 21/07/2017 13:34:50 door - Ariën -
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.
Heb dit ook ergens gelezen op forums, maar weet niet hoe dat moet.
Ik gebruik notepad++
Thx.
Toevoeging op 21/07/2017 13:37:33:
Thomas, dat van de nulletjes en eentjes ken ik (ben bachelor ICT van opleiding,
zei het 20 jaar geleden :-).
Dit probleem had ik ook met data in mysql databases, maar daar bood htmlspecialchars een oplossing...
There Ain't No Such Thing As Plain Text.
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).
Lees dit eens: 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).
Gewijzigd op 21/07/2017 13:41:09 door Thomas van den Heuvel
Er was nog geen sprake van webdesign of web programmatie.
Deze huidige programmeertalen/technieken leer ik momenteel zelf
(HTML, JAVASCRIPT, PHP, MySQL, CSS, ...)
Toevoeging op 21/07/2017 13:59:28:
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
Toevoeging op 21/07/2017 14:45:44:
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?