Autor | Zpráva | ||
---|---|---|---|
Anonymní Profil * |
#1 · Zasláno: 29. 5. 2008, 22:37:05
Vůbec tomu nerozumim, ale mam index.php napsan v Ansi v noteapadu ++ a potřebuju rozchodit češtinu jak v html textu tak v php, ve kterém vypisuji údaje z databaze. Z databaze je to ok, tam mam latin2 ,ale potřebuju ošetřit i tu html část. Ted mam v meta tuto : ISO-8859-2 a nefunguje, nejde Ž. Co mam tedy do meta dát? win-1250 taky nefunguje.
Díky a omlouvám se, že zahlcuji diskusi podobnými dotazy, na které se tu již někd odpovídalo, ale už se v tom ztrácim. |
||
Miloš Profil |
#2 · Zasláno: 29. 5. 2008, 22:55:11
Vhodné je, aby všechny soubory, ze kterých poskládáš stránku, měly jednotné kódování.
Pokud má některý soubor jiné, je potřeba ho před vložením překódovat. Výsledná stránka se nemůže skládat z různě kódovaných částí, to je přeci nesmysl. |
||
Janina Profil |
#3 · Zasláno: 29. 5. 2008, 23:19:12
mysql_query("SET NAMES 'cp1250';") a v meta taky win 1250 ale v db porovnání latin2, vadí to? uloženo v asci v notepadu.
btw: předch. příspěvek taky muj. |
||
Kajman_ Profil * |
#4 · Zasláno: 30. 5. 2008, 07:43:46
Zkuste zmiznout ten středník za cp1250 - kvůli němu se nejspíš dotaz vůbec neprovede.
|
||
lordfrikk Profil |
#5 · Zasláno: 30. 5. 2008, 10:25:45 · Upravil/a: lordfrikk
Doporučuji přejít na UTF-8, používání windows-1250 patří do roku 2000 a může způsobovat pro ne-Windows uživatele problémy. Co se týče samotného SQL, tak kromě SET NAMES cp1250 přidej pro jistotu i SET CHARACTER SET cp1250. Správný meta tag není win-1250, ale windows-1250. Středníky v MySQL slouží standartně pro oddělovaní jednotlivých dotazů, to problém činit nemělo.
|
||
Miloš Profil |
#6 · Zasláno: 30. 5. 2008, 11:08:51
lordfrikk
Osobně sice UTF-8 taky považuji za pohodlnější, ale přesto: používání windows-1250 … může způsobovat pro ne-Windows uživatele problémy Jaké problémy? |
||
lordfrikk Profil |
#7 · Zasláno: 30. 5. 2008, 17:43:58
Chybně zobrazené znaky? (logicky)
|
||
Miloš Profil |
#8 · Zasláno: 1. 6. 2008, 18:20:51
lordfrikk
Chybně zobrazené znaky? (logicky) Jestli je to odpověď na moji otázku, pak bych doplnil, že chybně zobrazené znaky se mohou vyskytnout zcela nezávisle na tom, jestli někdo má/namá windows a jestli je to windows-1250, utf-8 nebo iso-8859-2. Pokud zapíšu správně kódovou stránku, pak je naprosto jedno, jaké kódování použiju a nedovedu si představit jediný problém se zobrazením. |
||
lordfrikk Profil |
#9 · Zasláno: 1. 6. 2008, 18:51:27
Problém může být právě v tom, že windows-1250 není žádný standard jako iso-8859-2, ale (jako vše u Microsoftu) proprietární kódování.
|
||
Miloš Profil |
#10 · Zasláno: 1. 6. 2008, 19:03:04
lordfrikk
windows-1250 není žádný standard Není to standard proto, že to není iso? Problém může být… To je právě to může – konkrétní příklad by nebyl? Protože jinak se pohybujeme v říši dohadů a pohádek. |
||
lordfrikk Profil |
#11 · Zasláno: 3. 6. 2008, 12:45:53
Rád bych měl, ty si se nikdy s problémem nesetkal?
|
||
veteran Profil * |
#12 · Zasláno: 3. 6. 2008, 13:20:32
Mam takyto kod:
<?php require_once("inc/db.php"); $_POST['nazov'] = $nazov; $_POST['adresa'] = $adresa; $_POST['den'] = $den; $_POST['mesiac'] = $mesiac; $_POST['rok'] = $rok; $sql = mysql_query("INSERT INTO tlaciva(nazov,adresa,den,mesiac,rok) VALUES('$nazov','$adresa','$den','$mesiac','$rok')"); $sql = mysql_query("SET NAMES 'cp1250'"); if($sql){ echo "Záznam bol úspešne vložený do databázy!"; } else { echo "Záznam sa nepodarilo vložiť do databázy!"; } mysql_close(); ?> Vsetko mi zobrazuje OK az na á í é ý ú ô (tvar: á ô). Ostatne znaky, ktore maju takyto tvar ž mi idu. Co stym mam robit? A co ak chcem do DB vkladat HTML tagy a znaky ako <>"" mi prerobi takto < > " ". Dakujem za odpoved. |
||
lordfrikk Profil |
#13 · Zasláno: 3. 6. 2008, 15:15:37
Na převod < zpět na HTML tagy je funkce htmlspecialchars_decode.
|
||
veteran Profil * |
#14 · Zasláno: 3. 6. 2008, 18:47:19
Na převod < zpět na HTML tagy je funkce htmlspecialchars_decode.
diky. A co mam robit s áéíóúýô ?? |
||
lordfrikk Profil |
#15 · Zasláno: 4. 6. 2008, 10:07:52
Věř, že kdybych věděl, co to může způsobovat, tak bych to napsal v prvním příspěvku :)
|
||
Časová prodleva: 16 let
|
0