Autor | Zpráva | ||
---|---|---|---|
radozaj Profil |
#1 · Zasláno: 8. 12. 2006, 13:29:04
Ahoj,
už dosť dlho ma trápi jeden problém na mojich php stránkach. Zrejme ide o problém s kódovaním, ale neviem si rady. Píšem, že php, pretože ak použijem len HTML, tak mi to nerobí. Totižto, ak napíšem php stránku napr. pokus.php a vyzerá takto: <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> </HEAD> <BODY> Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890 <? echo $_SERVER['HTTP_ACCEPT_CHARSET']; ?> </BODY> </HTML> V hocijakom prehliadači napr. Firefox, Opera, IE5, IE6 alebo v IE7 to BUG-ne tak, že napíše: Tak u? to b kdy? se ?lov?k pusto k?ku s jazykem. 1234567890 Tento BUG sa ale hneď opraví, ak stlačím F5 (refresh). No však keď vypnem prehliadač a neskôr ho znovu otvorím tú stránku, tak zase to BUG-ne a ja som donútený stlačiť F5. Vážne si neviem rady, pretože kódovanie používam rovnaké, ako je na servry, tak aj na stránke a tak aj v ňom to ukladám (textový editor). Ale doteraz žiadna HTML stránka na rovnakom servery a rovnako kódovaná to ešte neurobila. Do ukážkovej stránky som dal aj zobraziť globálnu premennú na Obsah hlavičky Accept-Charset, avšak to nezobrazuje nič a mala by zobrazovať utf-8. Tu je tá stránka, ale nie vždy to BUG-ne pokus.php Prosím, poraďte mi. |
||
Str4wberry Profil |
#2 · Zasláno: 8. 12. 2006, 19:52:01
a co tam dát tohle:
<meta http-equiv='Content-Language' content='cs' /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> anebo nastavit kódování přímo toho dokumentu. |
||
radozaj Profil |
#3 · Zasláno: 9. 12. 2006, 08:42:56
prepísal som kód na:
<HTML> <HEAD> <meta http-equiv='Content-Language' content='cs' /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> </HEAD> <BODY> Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890 <? echo $_SERVER['HTTP_ACCEPT_CHARSET']; ?> </BODY> </HTML> A bezo zmeny, stale rovnake problemy, rovnake BUG-y a stale ta globalna premenna nema nic v sebe. |
||
krteczek Profil |
#4 · Zasláno: 10. 12. 2006, 00:06:12
radozaj: myslím že sis spletl pojem s průjmem....
kódování dokumentu záleží na znakové sadě v které byl vytvořen/uložen, takže pokud je to ve windows-1250 tak i <meta http-equiv="content-type" content="text/html; charset=windows-1250"> tohle s accept language nemá nic společného... krteczek |
||
radozaj Profil |
#5 · Zasláno: 10. 12. 2006, 07:25:39
Tak kde je teda problém?
|
||
radozaj Profil |
#6 · Zasláno: 11. 12. 2006, 07:34:11
Nemoze byt problem u servera?
|
||
rommy Profil * |
#7 · Zasláno: 11. 12. 2006, 17:22:09
já to odsud vidím normálně
|
||
Časová prodleva: 4 dny
|
|||
radozaj Profil |
#8 · Zasláno: 15. 12. 2006, 17:59:54
ono to neurobí vždy, ale iba niekedy... a občas to BUG-ne aj doma, v škole, u kamoša...
|
||
rommy Profil * |
#9 · Zasláno: 15. 12. 2006, 18:08:19
máš pravdu, někdy se to opravdu zobrazí špatně...já bohužel poradit neumím, ale snad se někdo s radou najde
|
||
krteczek Profil |
#10 · Zasláno: 16. 12. 2006, 13:59:01
skus na začátek stránky připsat hlavičku:
<?php header("content-type: text/html; charset=windows-1250");?> je to serverová hlavička snad to už dělat nebude, vypadá to, jako by občas server posílal jiné kodování (to přebije kodování v html => server je silnější) krteczek |
||
radozaj Profil |
#11 · Zasláno: 17. 12. 2006, 06:49:33
Tak ma napadlo, že či to nemôže byť tým, že <? ... ?> dávam iba kde potrebujem a nie hneď od začiatku. Skúsil som to dať takto:
<?php echo "<HTML>"; echo "<HEAD>"; echo "<meta http-equiv='Content-Language' content='cs' />"; echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />"; echo "</HEAD>"; echo "<BODY>"; echo "Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890"; echo "</BODY>"; echo "</HTML>"; ?> a zatiaľ mi to ne-BUG-lo. Pomohlo to? Alebo to BUG-ne, keď nebudem čakať... |
||
radozaj Profil |
#12 · Zasláno: 17. 12. 2006, 19:47:40
Tak a zase to BUG-lo, takže som to opravil a teraz:
<?php header("content-type: text/html; charset=utf-8"); echo "<HTML> "; echo "<HEAD>"; echo "<meta http-equiv='Content-Language' content='cs' />"; echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />"; echo "</HEAD>"; echo "<BODY>"; echo "Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890"; echo "</BODY>"; echo "</HTML>"; ?> no som zvedavý... |
||
radozaj Profil |
#13 · Zasláno: 17. 12. 2006, 20:01:26
neúspech, zase to robí. UŽ si neviem rady. Ale zistil som, niečo nové. Na tom istom servery mám aj CMsimple, blog, phpbb a tie to nerobia, takže je to riešiteľný problém. Ale ako na to?
|
||
radozaj Profil |
#14 · Zasláno: 18. 12. 2006, 17:28:44
A ďalšia nová vec: keď mi to BUG-lo, dal som vo firefoxe Nástroje / Informácie o stránke. Potom som sa na to info pozrel, keď to ne-BUG-lo a všetko bolo rovnaké až na veľkosť, ktorá zrazu vzrástla zo záhadných príčin (to BUG-nuté malo menej). Pomôže vám to zistiť v čom len môže byť chyba? Ja si už neviem rady.
|
||
Časová prodleva: 3 dny
|
|||
unit353 Profil * |
#15 · Zasláno: 21. 12. 2006, 13:01:38
"BUG-lo" to je mi teda výraz.
otevri v notepadu ten php soubor, dej ulozit-jako a zvol misto ANSI kodovani -> UTF8, pravděpodobně ti to vyhodí hlášku a poškodí současné písmenka. Budeš muset písmenka opravit ale bude to pak v UTF8. Pokud to v notepadu nepůjde, tak to vyzkousejt ulozit jako UTF8 v PSPadu. |
||
radozaj Profil |
#16 · Zasláno: 21. 12. 2006, 16:00:23
Bol by som rád, keby problém bol v tom, ale nie je, pretože to už dlhšie ukladávam v UTF-8. Teda uložené v UTF-8, v hlavičke mám UTF-8, aj to číta v UTF-8 a BUG-uje (vážne pekný výraz) to stále. Aj keď som úlne zmenil kódovanie, robilo to tiež. Dnes ešte vyskúšam nainštalovať si doma php, mysql a apach server a som zvedavý, či to bude robiť aj po zmene serveru. Potom dám vedieť.
|
||
Hooonza Profil * |
#17 · Zasláno: 21. 12. 2006, 16:29:45
radozaj
Kód: <HTML> <HEAD> <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> </HEAD> <BODY> Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890 </BODY> </HTML> Zkusil jsem toto: 1. PSPad/Soubor/Otevřít... (soubor viz výše) 2. PSPad/Formát/UTF-8 (zaškrtnout) 3. PSPad/Uložit A browser teď čte větu normálně s diakritikou. |
||
radozaj Profil |
#18 · Zasláno: 21. 12. 2006, 21:17:22
Hooonza
Áno, ale to je HTML a to mi ide i na servery v pohode. Problém sa vyskytne až keď i z toho istého HTML spravím php už len tak, že zmením príponu na pokus.php all No tak som ten server doma rozbehol (použil som EasyPHP 8) skúsil som dať problémovú php stránku do prehliadaču a v pohode. Takže bude problém u serveru poskytovateľa webu. Však ja používam inet. Stretol sa niekto s problémami s ním? pokus.php <?php echo "<HTML> "; echo "<HEAD>"; echo "<meta http-equiv='Content-Language' content='cs' />"; echo "<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />"; echo "</HEAD>"; echo "<BODY>"; echo "Tak už to bývá, když se člověk pustí do křížiku s jazykem. 1234567890"; echo "</BODY>"; echo "</HTML>"; ?> |
||
Časová prodleva: 17 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0