» Poradna » Web a internet

Kódování a php - problém

 |   |  Microsoft Windows 7 Chrome 28.0.1500.70

Dobrý den, mám problém se svým webem, nejspíš je to problém z kódováním. Mám napsán PHP program a mám vypsané všechno přes příkaz echo a tagy <p></p> všechno funguje, tedy do té doby když to není vypisováno v nějaké funkci či podmínce a vypisujete divný znaky, je nějaká možnost, než to řešit přes entity?Pro lepší pochopení, mého chaotického popisu, vyplňte formulář na http://webovec.8u.cz/regis.php (nebojte, má to být registrace a nefunguje zatím) a uvidíte...Zdrojový kód je zde (nelekněte se těch některých sprostých, to je připravovaná cenzura):<?phpinclude("hlavicka_a_vrsek.php");$jmeno_doma= $_POST["jmeno"];$email_doma= $_POST["email"]; $heslo_doma= $_POST["heslo"];$heslo_znova_doma= $_POST["heslo_znova"]; echo "<p>Vyplnil jste hodnot:</p>".$jmeno_doma."<p>a</p>".$email_doma."<p>a<p>".$heslo_doma."<p>a</p> ".$heslo_znova_doma;$jmeno_doma=trim($jmeno_doma);$nickname="a".$jmeno_doma;function jeemail($prichozi){if (eregi("^.+@.+\..+$" ,$prichozi)==FALSE){$vysledek="<p>Neni e-mail</p>";}else{$vysledek="<p>Je e-mail</p>";} return $vysledek;}echo (jeemail($email_doma));function stejnahesla($heslo_prvni, $heslo_druhy){if($heslo_prvni==$heslo_druhy)$odpoved="<p>Jsou stejná</p>";else {$odpoved="<p>Nejsou stejná</p>";}return $odpoved;}echo(stejnahesla($heslo_doma,$heslo_znova_doma));function cenzura ($nickname){ $sprostaslova=array(1=>......zde Ukázat celý příspěvek

Mohlo by vás také zajímat

Odpovědi na otázku

avatar
 | Microsoft Windows 8 Firefox 22.0

Ve formuláři máš znaky v utf-8 a ve stránce včetně nastaveného kodování máš windows-1250. Teď se většinou všechno koduje v utf-8 tak udělej i obsah stránky v něm a nastav kopdování na utf-8, znaky se ti pak budou zobrazovat všechny správně.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 28.0.1500.72

V PsPadu to mám nastavené, v hlavičce to mám změněno, ale pořád mi to vypisuje podivné znaky (jiné než před tím). http://webovec.8u.cz/index.php stránka je svědkem . Není třeba problém s PsPadem či serverem endory? Zatím děkuji a prosím vás o další radu.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 8 Firefox 22.0

<!doctype html><html><head><meta charset="utf-8"><title>Dokument bez názvu</title><link href="styly.css" rel="stylesheet" type="text/css"></head><body>...</body></html>Buď je to problém špatně napsaného meta nebo rozhozeného kodování, zjišťovat nebudu. Takže celé to musí být v utf-8 a vzor struktury máš výše. Víc ti k tomu psát netřeba.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | Microsoft Windows 7 IE 10.0

Se koukni do browseru, jaký nesmysl ti z toho leze:<meta http-equiv=\'Content-Type\' content=\'text/html; charset=utf-8\' />Na co máš ve zdrojáku ty dvojité zpětné lomítka? (\\'Content-Type\\' atd.) Jedno uber.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | Microsoft Windows 7 IE 10.0

...tedy do php zdrojáku patří:<meta http-equiv=\"Content-Type\" content=\"text/html; charset=windows-1250\" />nebo<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />(jestli tam můžou být jednoduché uvozovky nevím, obvykle se tam píšou dvojité, tak jsem sem napsal dvojité.).

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 8 Firefox 22.0

Stačí:<meta charset=\"utf-8\">

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Firefox 22.0

Kdyžtak zkus <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><meta http-equiv="Content-Language" content="cs" />S tímhle by to tuším mělo jít normálně.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 8 Firefox 22.0

Stoprocentně stačí to co jsem psal.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Linux Firefox 23.0

Mám takový dohjem, že pokud by ty stránky byly v xhtml, tak tam ani žádné k=odování být nemusí. Protože, pokud není kódování specifikováno, tak se předpokládá, že dokument je v utf-8, ale je lepší a dobré tam kódování uvést.

Souhlasím  |  Nesouhlasím  |  Odpovědět
avatar
 | Microsoft Windows 8 Firefox 22.0

V xhtml to nemá. No nemusí tam být cokoliv. Já psal jen to co je běžné a co naprosto stačí.Toto ale považuju za zbytečnou vatu:http-equiv="Content-Type" content="text/html;<meta http-equiv="Content-Language" content="cs" />/ ... všechny nepotřebné ukončovací značky.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 | Microsoft Windows 7 IE 10.0

Jde o PHP kód, chybí ti tam zpětná lomítka před uvozovkami.Pokud by tazatel zrušil příkaz echo a umístil do souboru vrsek.php čistý html kód, tak by to fungovalo tak, jak jsi napsal, ale pravděpodobně si to připravuje pro pozdější úpravy, například načítání nějakých údajů z databáze a tedy PHP kód se musí psát podle PHP pravidel.A PHP pravidla vyžadují před speciálními znaky právě jedno zpětné lomítko, bez lomítka nebo se dvěma zpětnými lomítky to nefunguje.

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   |  Microsoft Windows 7 Chrome 28.0.1500.72

Byl problém s těmi uvozovkami a částečně z PsPadem. Všem děkuji.

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: PHP, Cenzura, Echo, Kódování, Return, Trim