| Autor | Zpráva | ||
|---|---|---|---|
| stitch123 Profil |
#1 · Zasláno: 5. 8. 2014, 20:10:58
Ahoj. Chtěl jsem vytvořit jednoduchej mailto formulář. Vzniklo z toho toto:
<H3> Kontaktujte mě...</H3> <form action="mailto:[můj@email.cz]" enctype="text/plain" method="post"> <b>Vaše jméno:</b> <input name="Name" type="text" id="Name" size="30"><br> <b>Váš e-mail:</b> <input name="E-mail" type="text" id="E-mail" size="30"><br> <p><b>Zpráva:</b></p> <p><textarea name="Comment" cols="60" rows="6" id="Comment"></textarea></p> <p><input type="submit" name="Submit" value="Odeslat!"></p> </form> Po kliknutí na odeslat se prostě žádná zpráva neodešle. Neví někdo příčinu? Prosím, neukamenujte mě za blbej dotaz. S HTML začínám- |
||
| Taps Profil |
#2 · Zasláno: 5. 8. 2014, 20:25:04
|
||
| Marschmallow Profil |
#3 · Zasláno: 5. 8. 2014, 21:38:07
stitch123:
Tvůj uvedený způsob je velmi nespolehlivý napříč prohlížeči a e-mailovými klienty. Zkusil bych variantu s pomocí serverového skriptu PHP. Zde je funkční skript s antispamovou ochranou - trošku mnou upravený, původně od Tomáše Erlicha: formular.php: <form action="odeslat.php" method="post"> Odesílatel:<input name="email" size="30" type="text"/> Předmět:<input name="predmet" size="30" type="text"/> Vypočítej:<input name="spam" size="23" type="text"/><strong>= 1 + 1</strong> Zpráva:<textarea name="zprava" rows="8" cols="50"></textarea> <input type="submit" class="button" value="Odeslat e-mail!"/> odeslat.php: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta http-equiv="Refresh" content="4;url=index.php">
<title>Odesílám ...</title>
</head>
<body>
<?
$prijemce = $_POST['tvuj@mail.cz'];
$predmet = $_POST['predmet'];
$email = $_POST['email'];
$spam = $_POST['spam'];
$zprava = $_POST['zprava'];
if ($prijemce!="" and $predmet!="" and $email!="" and $zprava!="" and $spam=="2")
{
Mail($prijemce, $predmet, $zprava, "From: " . $email);
echo "<p>Váš e-mail byl úspěšně odeslán!";
}
else
{
echo "<p>Váš e-mail nelze odeslat, nebo jste špatně vyplnili matematický příklad!</p>";
}
?>
</body>
</html>- Čtyřka (4) označuje, za jak dlouho má dojít k přesměrování na stránku index.php - tvuj@mail.cz si zaměň za svůj e-mail |
||
| Zechy Profil |
#4 · Zasláno: 6. 8. 2014, 00:38:31
Marschmallow:
Proč ten email dáváš jako index postu? |
||
| stitch123 Profil |
#5 · Zasláno: 6. 8. 2014, 10:33:17
Taps, Marschmallow: Díky, ale PHP vůbec neumím. Nejspíš teda budu muset využít služeb Blueboard nebo Mailform.
|
||
| Marschmallow Profil |
stitch123:
„...ale PHP vůbec neumím.“ Vždyť v [#3] máš hotový skript, stačí ho uložit dva soubory, stejně pojmenovat a dát do stejné složky. Pak stačí mít jen hosting s podporou PHP (klidně bez databáze). Změnit e-mail, případně přesměrování a hotovo. Pak jen nahrát na FTP. Pokud vím, tak Sweb od seznamu, který máš uvedený v profilu jako svou webovou stránku PHP podporuje ;) Mimochodem, proč na svém webu podporuješ fašismus (důkaz - levý sloupeček "Moje vlastní vlajky")? Myslím, že je to u nás dokonce trestné. |
||
| stitch123 Profil |
Marschmallow:
...proč na svém webu podporuješ fašismus...? Nepodporuju. Vysvětlení je níže na tom webu :) Každopádně na tenhle web mailto formulář nepotřebuju, ale i ten druhý, kde bych ho chtěk využít, je na Swebu od Seznamu. No já popravdě vůbec nevím, jak PHP funguje. Jestli stačí jenom vytvořit a nahrát je, tak to nějak zkusím. Díky! |
||
| jenikkozak Profil |
#8 · Zasláno: 6. 8. 2014, 12:58:26
Marschmallow:
„Vždyť v [#3] máš hotový skript“ Ale jak upozornil Zechy, nebude to fungovat. - $_POST['tvuj@mail.cz']; je položka pole $_POST, která má index tvuj@mail.cz. Hodnotu však nemá nastavenou žádnou.
- Lomítka na koncích značek políček formuláře jsou jen pro srandu králíkům. - Hláška o úspěšném odeslání e-mailu vůbec nekontroluje, zda e-mail byl předán dál. - Hláška o chybném vyplnění příkladu se zobrazí i v případě, že je vypočítán správně, ale chybí třeba zpráva. stitch123: „Nejspíš teda budu muset využít služeb Blueboard nebo Mailform.“ Jo, to bude asi jistější. |
||
|
Časová prodleva: 12 let
|
|||
0