Autor | Zpráva | ||
---|---|---|---|
Jendak Profil * |
#1 · Zasláno: 29. 11. 2012, 18:30:07
Zdravim,
zajímalo by mě, jak se dělá aby return z funkce se zobrazil na určitém místě. Nevím jak to vysvětlit lépe, proto přiložím ukázku. <?php function login ($name, $pass) { if (empty($name)) { $nameErr = "Zadejte jméno"; return $nameErr; } elseif (empty($pass)) { $passErr = "Zadejte heslo"; return $passErr; } else { //další podmínky a konečné přihlášení } } //následující kod bude v jiném souboru než samotná fce if (isset($_POST['submit'])) { login($_POST['name'], $_POST['pass']); } ?> <form method="post" action="#"> <input type="text" name="name"><br> <?php echo isset($nameErr)?$nameErr:"";?> <input type="text" name="pass"> <?php echo isset($passErr)?$passErr:"";?> <input type="submit" name="submit"> </form> |
||
Michal Maršálek Profil |
#2 · Zasláno: 29. 11. 2012, 18:37:36
Zdravím,
problém je v tom, že při použití return se funkce ukončí. |
||
Jendak Profil * |
#3 · Zasláno: 29. 11. 2012, 18:39:46
Tak jak to mám udělat tak, aby to fungovalo? :D
|
||
Michal Maršálek Profil |
#4 · Zasláno: 29. 11. 2012, 18:41:47
Příliš nechápu, co chceš udělat. Na místě, kde voláš tu funkci její return nikam neukládáš ani nevypisuješ.
|
||
Jendak Profil * |
#5 · Zasláno: 29. 11. 2012, 18:43:18
No chci vypsat chybové hlášky pod inputama. A ten return se pak snažím vypsat kodem:
<?php echo isset($nameErr)?$nameErr:"";?>
|
||
Taps Profil |
<?php function login ($name, $pass) { if (empty($name)) { $nameErr. = "Zadejte jméno"; } elseif (empty($pass)) { $nameErr. = "Zadejte heslo"; } else { //další podmínky a konečné přihlášení } return $nameErr; } |
||
Jendak Profil * |
#7 · Zasláno: 29. 11. 2012, 18:51:06
Taps:
To se sice vypisuje, ale odpadá tím možnost vypsání chyby přímo pod inputem, kterého se to týká. (chyba o nevyplněném jménu se zobrazí pod inputem pro jméno, apod...) Možná se to tak, jak se já snažím, nedělá. Můžete mi teda poradit jak to udělat správně? |
||
Taps Profil |
#8 · Zasláno: 29. 11. 2012, 18:55:34
Jendak:
co tak použít jquery validation plugin http://programujte.com/clanek/2009090500-jquery-plugin-validation-plugin-pro-snadnou-kontrolu-formularu/ |
||
Jendak Profil * |
#9 · Zasláno: 29. 11. 2012, 19:01:47
Taps:
To je určitě hezké řešení a někdy ho použiju (přidávám do záložek). Ale přecejenom, teď bych to potřeboval udělat za pomoci jen php. |
||
Str4wberry Profil |
#10 · Zasláno: 29. 11. 2012, 19:22:19
1) Podmínka se mi moc nezdá. V případě, že nebude zadáno jméno i heslo se na zadání hesla neupozorní.
2) Funkcí si vraťte pole s žádnou, první, druhou nebo oběma chybami. $pole = array(); if (podminka) $pole["jmeno"] = "Zadejte jméno"; if (podminka) $pole["heslo"] = "Zadejte heslo"; return $pole; $chyba = login(…); $chyba["jmeno"] , resp. $chyba["heslo"] příslušná chyba nebo nic.
Tak nějak by to mohlo fungovat. |
||
Jendak Profil * |
#11 · Zasláno: 29. 11. 2012, 19:33:30
Super, díky! Přesně takle jsem to potřeboval.
|
||
Časová prodleva: 11 let
|
0