Ik heb ik zo hier en daar wat gezocht / gevonden / toegepast en helaas tot nu toe zonder resultaat.
Mijn probleem is als volgt:
Heb een PHP website en heb daar een database achterstaan. Alle gegevens worden daarin opgeslagen. Hierbij worden speciale karakters als û (html-entities)etc etc opgeslagen.
Maar als ik deze data wil ophalen en deze vervolgens wegschrijven in een formulier op het scherm krijg ik rechtstreeks deze data in een input veld: &.ucirc; etc... En dat mot niet natuurlijk
Nu heb ik al zitten proberen met form enctype en Character encodings (ISO-8859-1 en utf-8)
Maar helaas zonder resultaat.
Doel is dus gewoon om deze entities als gewone tekst (û etc) op het scherm te krijgen..
Heb een testje gemaakt alsvolgt:
Met als output: (even de entities zonder . nemen ^^, anders pakt hij het verkeerd..)
Standaard
Brûle �; (edit: typfout)
htmlentities
Br&.ucirc;le û
html_entity_decode
Br�le �;
htmlspecialchars
Br&.ucirc;le �;
Op een of andere manier maakt hij er dus een � van.
Rechtstreeks een html entitie in het veld pasten werkt gewoon maar ik werk via PHP/AJAX en daarmee gaat dat dus fout. Ook met de PHP functies zoals hierboven...
Anyone?
Alvast bedankt!
EDIT:
sorry voor late post maar dit even te verduidelijking van mijn probleem:
Het probleem begon als volgt:
"Brûle" staat in de DB en bij het opvragen van gegevens werdt dit in de browser weggeschreven als "Br?" en verder niets erachter....
Door die "?" merkte ik dus dat het fout ging met die speciale karakter.
Heb dus wat uitgezocht en wat uitgeprobeerd.
Als test heb ik dus even HARD in de DB "Brûle" vervangen door "Br&.ucirc;le" (zonder punt
)
Dan de data weer opgehaald in de browser en nu kreeg ik wel de goede tekst te zien. Werkt dus prima! (ik merkte een typfout in mijn TS, sorry)
Maar er zat wat haken en ogen aan namelijk:
Mijn probleem is dus in principe het weergeven van de html entities die rechtstreeks in een form veld komen te staan.
ik heb niets gedaan mbt het opslaan van de gegevens in de db, want dit is pas stap 2 nadat ik zeker weet dat dit werkt
Mijn probleem is als volgt:
Heb een PHP website en heb daar een database achterstaan. Alle gegevens worden daarin opgeslagen. Hierbij worden speciale karakters als û (html-entities)etc etc opgeslagen.
Maar als ik deze data wil ophalen en deze vervolgens wegschrijven in een formulier op het scherm krijg ik rechtstreeks deze data in een input veld: &.ucirc; etc... En dat mot niet natuurlijk
Nu heb ik al zitten proberen met form enctype en Character encodings (ISO-8859-1 en utf-8)
Maar helaas zonder resultaat.
Doel is dus gewoon om deze entities als gewone tekst (û etc) op het scherm te krijgen..
Heb een testje gemaakt alsvolgt:
PHP:
1
2
3
4
5
6
7
8
9
10
| // ik gebruik hier dus beide vormen van û en de html entitie ervan $test = "Brûle û"; echo "Standaard "; info($test); echo "htmlentities "; info(htmlentities($test)); echo "html_entity_decode "; info(html_entity_decode($test)); echo "htmlspecialchars "; info(htmlspecialchars($test)); |
Met als output: (even de entities zonder . nemen ^^, anders pakt hij het verkeerd..)
Standaard
Brûle �; (edit: typfout)
htmlentities
Br&.ucirc;le û
html_entity_decode
Br�le �;
htmlspecialchars
Br&.ucirc;le �;
Op een of andere manier maakt hij er dus een � van.
Rechtstreeks een html entitie in het veld pasten werkt gewoon maar ik werk via PHP/AJAX en daarmee gaat dat dus fout. Ook met de PHP functies zoals hierboven...
Anyone?
Alvast bedankt!
EDIT:
sorry voor late post maar dit even te verduidelijking van mijn probleem:
Het probleem begon als volgt:
"Brûle" staat in de DB en bij het opvragen van gegevens werdt dit in de browser weggeschreven als "Br?" en verder niets erachter....
Door die "?" merkte ik dus dat het fout ging met die speciale karakter.
Heb dus wat uitgezocht en wat uitgeprobeerd.
Als test heb ik dus even HARD in de DB "Brûle" vervangen door "Br&.ucirc;le" (zonder punt
Dan de data weer opgehaald in de browser en nu kreeg ik wel de goede tekst te zien. Werkt dus prima! (ik merkte een typfout in mijn TS, sorry)
Maar er zat wat haken en ogen aan namelijk:
- Het werkt niet in een input veld van een form...... daar staat nog gewoon die html entitie in
Mijn probleem is dus in principe het weergeven van de html entities die rechtstreeks in een form veld komen te staan.
ik heb niets gedaan mbt het opslaan van de gegevens in de db, want dit is pas stap 2 nadat ik zeker weet dat dit werkt
[ Voor 27% gewijzigd door Tijgertje84 op 26-11-2007 12:00 ]
Intel© Conroe E6600 | Asus P5Q PRO Turbo | Sapphire Vapor-X HD5770 1GB | G.E.I.L. 2 GB DDR2-667 Kit CL4 4-4-12 | WD Caviar SE16 2x250GB (S-ATA2) (Raid0) | Sunbeam Trio | Chaintec CFT-500A | Windows XP Pro SP3 | Samsung Syncmaster S23A350H