Autor | Zpráva | ||
---|---|---|---|
alterego3000 Profil |
#1 · Zasláno: 5. 1. 2017, 19:16:14
Zdravím všechny. zkouším webový formulář, který je odesílán přes PHP soubor, a vždycky mi to napíše že email byl úspěšně odeslán, ale žádný nepřijde... Nevíte co s tím? Přikládám kódy s obou souborů:
HTML: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8"> <title>Odesílání emailu</title> </head> <body> <h1>Odesílání emailu</h1> <form action="posli.php" method="post"> <input name="email" size="25" value="XXX@seznam.cz"><br> <input name="predmet" size="25" value="Předmět"><br> <input name="spam" size="25"> <strong>= 1 + 1</strong><br> <textarea name="zprava" rows="6" cols="55">Zpráva...</textarea><br> <input type="submit" value="Odeslat"> </form> </body> </html> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=windows-1250"> <title>Odesílání emailu</title> </head> <body> <h1>Odesílání emailu</h1> <? $predmet = $_POST['predmet']; $email = $_POST['email']; $spam = $_POST['spam']; $zprava = $_POST['zprava']; if ($predmet!="" and $email!="" and $zprava!="" and $spam=="2") { Mail("XXX@seznam.cz", $predmet, $zprava, "From: " . $email); echo "<p><strong>Váš e-mail byl úspěšně odeslán</strong>.</p>"; } else { echo "<p>Váš e-mail se <strong>nepodařilo odeslat</strong> pravděpodobně jste nevyplnili všechny údaje, nebo nevíte kolik je 1 + 1.</p>"; } ?> </body> </html> |
||
Davex Profil |
#2 · Zasláno: 5. 1. 2017, 19:40:33
Skript jsem vyskoušel a zpráva na e-mail Seznamu přišla. Zkus použít www.mail-tester.com a opravit všechny nedostatky, které najde. Případně místo funkce
mail() sestavuj a odesílej e-mail s pomocí třídy PHPMailer.
|
||
Keeehi Profil |
#3 · Zasláno: 5. 1. 2017, 19:40:58
A kde to testuješ. Na nějakém webhostingu, nebo u sebe na localhostu? Protože jestli na localhostu, pak nejspíše nemáš nainstalovaný mailserver -> nemá ti co ty emaily odesílat.
Pokud na hostingu, tak pak tím že nastavuješ hlavičku From a odesíláš to ze "svého" serveru, tak je dost možné, že zpráva neprojde spammovým filtrem. Zkus si otestovat, jak na tom email je na www.mail-tester.com. |
||
alterego3000 Profil |
Keeehi:
Mám to na free hostingu od endory... A mám tedy odstranit from, nebo co s tím mám udělat? (v php jsem opravdu začátečník...) Keeehi: mail-tester už jsem zkoušel a měl jsem skóre 8.8 . To asi není špatné ne? |
||
Lonanek Profil |
#5 · Zasláno: 5. 1. 2017, 21:02:49
alterego3000:
„Mám to na free hostingu od endory...“ Nemáte účet (doménu) ve verzi Lite? |
||
Davex Profil |
#6 · Zasláno: 5. 1. 2017, 21:53:22
alterego3000:
„mail-tester už jsem zkoušel a měl jsem skóre 8.8 . To asi není špatné ne?“ Pokud se ti takto podařilo otestovat, tak to znamená, že formulář funguje a údaje z formuláře se odešlou e-mailem. Pokud to nepřijde do doručené pošty, tak to také může být v jiné složce, třeba Spam, nebo je potřeba opravit něco z toho, za co Mail Tester strhává body. |
||
Martin Joneš Profil |
Já osobně bych použil PHPmailer, než mail() funkci, jak říká Davex. Co jsem tak slýchal by měl být bezpečnější.
|
||
alterego3000 Profil |
#8 · Zasláno: 7. 1. 2017, 20:27:39
Lonanek:
možná to bude znít hloupě, ale jak poznám že mám účet lite? |
||
CZechBoY Profil |
#9 · Zasláno: 7. 1. 2017, 23:06:10
alterego3000:
lite je zadarmo, ostatní placené |
||
Lonanek Profil |
alterego3000:
V administraci účtu. Poud uvedete účet nebo doménu, mohu Vám to sdělit, popřípadě se můžete dotázat zde. CZechBoY: Varianta LITE a FREE jsou zdarma. Ve variantě LITE je navíc zakázána funkce mail(). |
||
Časová prodleva: 8 let
|
0