Autor | Zpráva | ||
---|---|---|---|
Patrik16 Profil |
#1 · Zasláno: 8. 4. 2017, 08:42:31
prosím vás nefunguje my tento formulár viete my prosím povedať prečo?
php script: <? $prijemca = "dušansd@gmail.com"; if ($meno && $email && $predmet && $text){ mail("$prijemca", "$predmet", "$meno $priezvisko Vám posiela tento text $text", "from: $email"); echo "Váš <b>email bol</b> úspešne <b>odoslaný</b>!"; } elseif (($meno && $email && $predmet && $text) == false){ echo "Váš <b>email nebol odoslaný</b>. <b>Nezadali ste všetky</b> povinné <b>údaje</b>."; } ?> html časť: <form action="data.php" method="post"> <fieldset><legend>Formulár a email</legend> Meno: <input name="meno" type="text" size="32" /><br /> Priezvisko: <input name="priezvisko" type="text" size="28" /><br /> E-mail: <input name="email" type="text" size="32" /><br /> Predmet: <input name="predmet" type="text" size="30" /><br /> <br>Text:<br> <textarea name="text" rows="7" cols="30"></textarea><br> <input name="odoslat" type="submit" value="Odoslať" /> </fieldset></form> <br> <font color="red">Všetky údaje sú povinné!</font> |
||
breeta Profil |
A kde přebereš ty proměnné, nebo co ti napíše ten script za chybu?
|
||
milous Profil |
#3 · Zasláno: 8. 4. 2017, 10:18:32
Patrik16:
proměnné najdeš v $_POST, ale dej si pozor, že je to uživatelský a neošetřený vstup. $meno atd nemáš nikde definované, takže bys tam měl mít něco jako: $meno = $_POST['meno']; // znovu připomínám, že takový vstup není bezpečný Používal bych otevírací značku <?php a pokud už za ukončovací značkou nic nepíšeš (např. nějaké html), tak bych nepoužíval ukončovací značku. A k té podmínce if ($meno && $email && $predmet && $text){ mail("$prijemca", "$predmet", "$meno $priezvisko Vám posiela tento text $text", "from: $email"); echo "Váš <b>email bol</b> úspešne <b>odoslaný</b>!"; } elseif (($meno && $email && $predmet && $text) == false){ stačí napsat if ($meno && $email && $predmet && $text) { .. } else { .. } |
||
Časová prodleva: 6 let
|
0