Autor | Zpráva | ||
---|---|---|---|
qweewq Profil * |
#1 · Zasláno: 6. 5. 2012, 15:11:32
Ahoj,
potřeboval bych prosím vás radu: strukturu webu mám takovou: .... ..... // Zde mám includované soubory s deklarovanými funkcemi if (!empty($_POST)){ bez_diakritiky($text); // Pokud zavolám funkci deklarovanou výše = Fatal error: Call to undefined function bez_DK() ... //Zde zpracovávám formuláře } if (empty($_POST)){ .... .... // Zde mám obsah webu s formuláři } Nechápu proč nemůžu zavolat fci ....(vše je v jednom souboru index.php) Děkuji za pomoc |
||
ShiraNai7 Profil |
#2 · Zasláno: 6. 5. 2012, 15:14:09
Funkce bez_DK neexistuje... urcite mas spravne nazev?
|
||
Tori Profil |
#3 · Zasláno: 6. 5. 2012, 15:14:43
qweewq:
Určitě se includuje skript s funkcemi? To jsou dvě funkce (bez_diakritiky a bez_DK), nebo jste si to jen zkrátil při psaní? |
||
Alphard Profil |
#4 · Zasláno: 6. 5. 2012, 15:14:57
Není tam překlep? Dejte sem delší kód.
|
||
qweewq Profil * |
#5 · Zasláno: 6. 5. 2012, 15:32:00 · Upravil/a: qweewq
Omlouvám se je to jedna a ta samá funkce....
// definice funkce pred if (!empty($_POST)) function bez_DK($text){ $prevodni_tabulka = Array('ä'=>'a','Ä'=>'A','á'=>'a','Á'=>'A','à'=>'a','À'=>'A','ã'=>'a','Ã'=>'A','â'=>'a','Â'=>'A','č'=>'c','Č'=>'C','ć'=>'c','Ć'=>'C','ď'=>'d','Ď'=>'D','ě'=>'e','Ě'=>'E','é'=>'e','É'=>'E','ë'=>'e','Ë'=>'E','è'=>'e','È'=>'E','ê'=>'e','Ê'=>'E','í'=>'i','Í'=>'I','ï'=>'i','Ï'=>'I','ì'=>'i','Ì'=>'I','î'=>'i','Î'=>'I','ľ'=>'l','Ľ'=>'L','ĺ'=>'l','Ĺ'=>'L','ń'=>'n','Ń'=>'N','ň'=>'n','Ň'=>'N','ñ'=>'n','Ñ'=>'N','ó'=>'o','Ó'=>'O','ö'=>'o','Ö'=>'O','ô'=>'o','Ô'=>'O','ò'=>'o','Ò'=>'O','õ'=>'o','Õ'=>'O','ő'=>'o','Ő'=>'O','ř'=>'r','Ř'=>'R','ŕ'=>'r','Ŕ'=>'R','š'=>'s','Š'=>'S','ś'=>'s','Ś'=>'S','ť'=>'t','Ť'=>'T','ú'=>'u','Ú'=>'U','ů'=>'u','Ů'=>'U','ü'=>'u','Ü'=>'U','ù'=>'u','Ù'=>'U','ũ'=>'u','Ũ'=>'U','û'=>'u','Û'=>'U','ý'=>'y','Ý'=>'Y','ž'=>'z','Ž'=>'Z','ź'=>'z','Ź'=>'Z'); return $text = strtr($text, $prevodni_tabulka); } // Zpracování formuláře => volání fce bez_DK($_POST["name_kategory"]); // $_POST["name_kategory"] => textový řetězec předaný z formuláře. Jinak pokud mám deklarovanou fci ve scriptu kde zpracovávám formulář tak to de.... // Ještě bych podotknul že ve zpracování formuláře volám i jiné fce u kterých se nevyskytne žádný takový problém Edit: $bez_diakritiky = bez_DK($_POST["name_kategory"]); |
||
qweewq Profil * |
#6 · Zasláno: 6. 5. 2012, 16:42:35
Nevíte někdo v čem by sem mohl dělat chybu? Kód jsem si prošel už asi stokrát, ale vše mi přišlo v pořádku
|
||
Davex Profil |
#7 · Zasláno: 6. 5. 2012, 18:04:48
Není funkce
bez_DK() deklarována uvnitř jiné funkce nebo v bloku kódu, který se nevykonává, takže pak není dostupná v globálním kontextu?
Toto třeba nebude fungovat: <?php if (false) { function func() { return 'abc'; } } else { echo func(); } |
||
qweewq Profil * |
#8 · Zasláno: 6. 5. 2012, 18:31:16
Je to udělané takhle:
Toto je index.php : require ("deklarece_funkci.php"); // Žádná z fcí není vnořená. V tomto souboru je deklarována funkce bez_DK($text), definice funkce viz výše if (!empty($_POST)){ //V této podmínce zpracovávám formuláře => Obsah této podmínky je ještě vložen v souboru zpracuj.php který je na místo této podmínky includován !!!! if (isset($_POST["now_kategory"]) && $_POST["now_kategory"] == "Vytvorit kategorii") { if ($_POST["name_kategory"]!=="") { $name_s_diakritikou = ucfirst($_POST["name_kategory"]); $name_bez_diakritiky = bez_DK($_POST["name_kategory"]); // Zde volám fci u které php píše chybu: Fatal error: Call to undefined function bez_DK() $result = mysql_query("INSERT INTO names_kategories (name_s_dk, name_bez_dk) VALUES ('$name_s_diakritikou','$name_bez_diakritiky')",$spojeni); if (mkdir ($adresar_kategorie.$name_bez_diakritiky, 777) !== FALSE && $result !== FALSE) { $hlaska = "Kategorie úspěšně vytvořena."; presmerovani($hlaska); } else { $hlaska = "Omlouváme se kategorii se nepodařilo vytvořit"; presmerovani($hlaska); } } else { $hlaska = "Kategorii se nepodařilo vytvořit. Nezadali jste jméno nové kategorie."; presmerovani($hlaska); } } ... } if (empty($_POST)){ // Zde mám obsah webu s formuláři .... } Opravdu už nevím čím to může být.... |
||
Časová prodleva: 12 let
|
0