| Autor | Zpráva | ||
|---|---|---|---|
| pexxxik Profil * |
#1 · Zasláno: 8. 11. 2008, 19:33:32
Ahoj mam tento kód:
<form action="send_mail.php" method="post"> Jméno: <input type="text" name="jmeno" size="10" maxlenght="10" style="margin-left:2px;" /></br> Předmět: <input type="text" name="predmet" size="20" style="margin-top:10px;" /></br> text: <textarea name="text" rows="8" cols="60" style="margin-left:2.6em;" align="top" ></textarea> <input value="odeslat" type="submit"> <?php $jmeno = $_POST[jmeno]; $predmet = $_POST[predmet]; $text = $_POST[text]; if (mail("pexxxik@wwwzdarma.cz", "$predmet", "$jmeno \n $text")) echo ("zpráva byla ůspěšně odeslána"); else {if (mail) echo("omlouváme se za vzniklé potíže, správu se nepdařilo odeslat");} ?> </form> a vždy kdyz někdo otevře tuto stránku mě se zašle e-mail (aniž by klikal na odeslat) jak to vyřešit??? |
||
| blackjoker Profil |
#2 · Zasláno: 8. 11. 2008, 19:46:53
Dej tam if kde se bude ověřovat že informace byli vyplněny pokud ne tak se zobrazí fomulář.
|
||
| king26 Profil |
#3 · Zasláno: 8. 11. 2008, 21:02:38 · Upravil/a: king26
<input value="odeslat" type="submit"> Přidat name: <input value="odeslat" type="submit" name="odeslat"> a potom podmínka: <?php
if(isset($_POST['odeslat'])) {
$jmeno = $_POST['jmeno'];
$predmet = $_POST['predmet'];
$text = $_POST['text'];
if(mail("pexxxik@wwwzdarma.cz", $predmet, $jmeno." \n ".$text)) echo "Zpráva byla úspěšně odeslána.";
else echo"Omlouváme se za vzniklé potíže, ale zprávu se nepodařilo odeslat.";
}
?> |
||
| pexxxik Profil * |
#4 · Zasláno: 8. 11. 2008, 22:06:48
dik
|
||
| pexxxik Profil |
#5 · Zasláno: 8. 11. 2008, 22:35:18
eště bych se chtěl zeptat jestli mám odesílání e-mailu nějak zapezpečit (třeba proti spamerum), a jestli jo tak jak???
|
||
| blackjoker Profil |
#6 · Zasláno: 10. 11. 2008, 10:40:52
Dej si tam dalíš input s heslem, které budeš taky ověřovat.
|
||
| Holyday Profil |
#7 · Zasláno: 10. 11. 2008, 13:28:42 · Upravil/a: Holyday
„Dej si tam dalíš input s heslem, které budeš taky ověřovat.“
Heslo nebude ideální, jestliže se jedná o formulář, pomocí kterého mu návštěvníci mohou poslat email... Antibotích řešení je více: -> nějaký početní příklad -> nějaká otázka, třeba zeměpisná (boti asi moc česky neumí) -> CAPTCHA - opisování náhodně generovaného řetězce z obrázku Všechny tři způsoby mohou být náhodně generovány (v případě zeměpisných otázek si třeba do pole napíšeš jejich seznam a náhodně budeš jednu vypisovat). No a nakonec samozřejmě ověřování správnosti odpovědi... EDIT: jestli ale nebudeš chtít aby návštěvník musel něco zadávat, mrkni třeba sem: "Opravdu funkční antispam řešení". |
||
| blaaablaaa Profil * |
#8 · Zasláno: 11. 11. 2008, 08:49:59
ideal je dat nejake pole skryte css-javascriptem, ktere se vyplni javascriptem ... pokud vyplnene neni nebo je vyplneno jinak, tak je to nejspis spambot:
napr.: <label for="icq">6*10=</label><input type="text" name="icq" id="icq" /> ...tohle cele pres javascript skryjes a vyplnis hodnotu na 6*10 = 60 ... pokud ma uzivatel js vyply, zobrazi se mu tento jednoduchy priklad, ktery vyplni...spambot si ale bude myslet, ze se tam vyplnuje icq, tak tam hodi reklamu |
||
| Holyday Profil |
#9 · Zasláno: 11. 11. 2008, 15:17:42 · Upravil/a: Holyday
blaaablaaa
„...tohle cele pres javascript skryjes a vyplnis hodnotu na 6*10 = 60 ... pokud ma uzivatel js vyply, zobrazi se mu tento jednoduchy priklad, ktery vyplni...spambot si ale bude myslet, ze se tam vyplnuje icq, tak tam hodi reklamu“ Spamboti se rychle učí a neoklameš je názvy polí. Napoprvé třeba ano, ale příště to již obejdou. Navíc je výhodnější používat typické názvy polí kvůli jejich automatickému dovyplňování, což šetří uživatelům čas. Jinak se ale skrývání pomocí CSS a nějaký ten JavaScript použít dá, ale všeho s mírou... A kombinovat více řešení, jedno málokdy stačí. |
||
|
Časová prodleva: 17 let
|
|||
0