re: Hibás ékezet megjelenés
állíts át mindent utf8 -ra (utf-8 hungarian-ci)
Ami pedig már adatbázisba került, azt ki kell dumpolni, átkonvertálni a karakterkódolást (a rosszul megjelenő karaktereket meg átírni)... Edem kollégával elszórakoztunk egy ilyennel egyszer egy órát :)
Cheers,
re: Hibás ékezet megjelenés
Értem,megpróbálom,remélem sikerül :) köszönöm.
re: Hibás ékezet megjelenés
Ennek nem sok köze van a karakterkódoláshoz, hanem inkább programozói hiba, azaz nem is hiba hanem nemtörődömség, de szerintem inkább egyszerűen bunkóság :D
A hiba onnan adódik álatlában, hogy valamiféle XSS védelmet akarnak megvalósítani, vagy csak óvják a usert és ere rossz függvényt használnak htmlspecialchars helyett htmlentities-t a megoldás annyi lenne elméletben hogy ki kell keresni hol alakítja át a db ből kapott adatot vagy a usertől kapottat GET/POST/COOKE stb és kicserélni a függvényt.
Demo -Save as UTF-8 No Boom
PHP kód:
<?php
header ('Content-type: text/html; charset=utf-8');
$szoveg = 'áéóú"íüóűő';
echo "$szöveg\n";
//htmlentities
echo htmlentities($szoveg) . "\n";
//htmlentities UTF8
echo htmlentities($szoveg, ENT_QUOTES, "UTF-8") ."\n";
//htmlspecialchars
echo htmlspecialchars($szoveg)."\n";
//htmlspecialchars UTF8
echo htmlspecialchars($szoveg, ENT_QUOTES, "UTF-8")."\n";
?>
Output:
Kód:
Ã¡Ã©ÃłÃº"Ã*ÃźÃłÅ±Å
áéóú"íüóűő
áéóú"íüóűő
áéóú"íüóűő
re: Hibás ékezet megjelenés
Köszi,jól hangzik.De leírnád részletesebben mit kellene csinálnom.Nem annyira értek az ilyen dolgokhoz.
re: Hibás ékezet megjelenés
Megpróbálom....
Total Commander és Notepad++ win alatt.
Letöltesz minden fájlt (és készítesz róla egy másolatot ha valami gond lenne késöbb) majd a könyvtárban rákeresel "htmlentities" szóra a könyvtárban, nem fájlt keresel hanem szöveget, ami után ez megvan megnyitod Notepad++ ban és kicseréled htmlentities -t htmlspecialchars -ra a fájlban (Ctrl + H) és lemented a fájlokat majd feltöltöd a szerverre a módosult fájlokat.
Ha lenne SSH hozzáférésed vagy egy jailshell akkor a szerveren 1 sorral el lehetne intézni.
Sok sikert :D
re: Hibás ékezet megjelenés
Te egy isten vagy! Köszönöm :)
re: Hibás ékezet megjelenés
Idézet:
KForum eredeti hozzászólása
Megpróbálom....
Total Commander és Notepad++ win alatt.
Letöltesz minden fájlt (és készítesz róla egy másolatot ha valami gond lenne késöbb) majd a könyvtárban rákeresel "htmlentities" szóra a könyvtárban, nem fájlt keresel hanem szöveget, ami után ez megvan megnyitod Notepad++ ban és kicseréled htmlentities -t htmlspecialchars -ra a fájlban (Ctrl + H) és lemented a fájlokat majd feltöltöd a szerverre a módosult fájlokat.
Ha lenne SSH hozzáférésed vagy egy jailshell akkor a szerveren 1 sorral el lehetne intézni.
Sok sikert :D
Mi az az 1 sor? Lehet idővel jól jönne másnak is. :lol:
re: Hibás ékezet megjelenés
Ahoz hogy helyben kicseréld a -i kapcsoló is kell az egysoros meg ez lenne:
Kód:
sed -i 's/htmlentities/htmlspecialchars/' /var/www/gipsz_jakab/weboldal/*/*.php
re: Hibás ékezet megjelenés
Gondban vagyok: Van egy csomó ANSI kódolású file-om, amit szeretnék UTF-é alakítani.
1. Megnyitom a file-t Notepad++-szal
2. Kllkkelek ide: Kódolás -> Átalakítás UTF-8-ra.
3. Leellenőrzöm a filet: a kódolás ok (most már az UTF mellett ven a pötty), majd Mentés.
4. Kilépek, megnyitom ugyanazt a file- újra, és a kódolásnál megint csak az ANSI van megjelölve.
Mi lehet gond?
Thx,
P1