Diskuse

Téma: Nefunguje email

Dobrý deň, snažila som sa dať na stranku formualar ktory sa mal odoslať na uvedenu emailovu adresu. Vsetko ide super, aj napise ze formular bol odoslany ale va emailovej poste nic nie je. Neviete kde by mohla byt chyba?
postZaslat odpověď
Do spamu to taky nepřišlo ?
Praveže nie :c prezrela som všetky kolonky....
Tu je to php: mam tam niečo zle?
<?php

$prijemca = "258@gmail.com";
$meno = $_POST['meno'];
$priezvisko = $_POST['priezvisko'];
$email = $_POST['email'];
$predmet = $_POST['predmet'];
$text = $_POST['text'];


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><head>
<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php?p=sekcead">
</head></html>
To, že se vypíše hláška o úspěšném odeslání je jen důsledek toho, že jsou vyplněny všechny kolonky. Kontrolu skutečného odeslání tam nikde nemáte.
Vypusťte poslední parametr funkce mail() [[i]"from: $email"[/i]] a otestujte chování.Popřípadě tento parametr upravte pro použití v hlavičce (viz. http://php.net/manual/en/function.mail.php)
Teraz to uz pre istotu nejde vobec
Pokud je aktivní vývojový režim systému s devkitem, pak se emaily doopravdy neodesílají, ale logují do souboru mail.log který je v rootu webu.
Mimochodem systém má pro odesílání emailů vlastní funkci
http://sunlight.shira.cz/upload/docs/api/function-_mail.html

A pár poznámek...
1. "$prijemca" => proč jsou proměnné v uvozovkách?
2. podmínkování $meno && $email && $predmet && $text je úplně špatné
3. a tohle elseif (($meno && $email && $predmet && $text) == false){ snad ani nemůže nastat

Řešil bych to spíše nějak takhle (píšu to z hlavy):
$prijemca = "258@gmail.com";
$meno = _post('meno');
$priezvisko = _post('priezvisko');
$email = _post('email');
$predmet = _post('predmet');
$text = _post('meno');

if( !empty($meno) && !empty($priezvisko) && !empty($email) && !empty($predmet) && !empty($text))
{
$obsah = printf("%s %s Vám posílá text: %s", $meno, $priezvisko, $text);

$result = _mail($prijemca, $predmet, $obsah);

    if(true===$result){
        echo "Váš <b>email bol</b> úspešne <b>odoslaný</b>!";
    }else{
       echo "Nastala chyba při odesílání emailu";
    }

}else{
    echo "Váš <b>email nebol odoslaný</b>. <b>Nezadali ste všetky</b> povinné <b>údaje</b>.";
}
Ako zistim ze je system aktivovany? A ako ho naopak vypnem?
/prepacte ak su to nejake hlupe otazky no nechcem sa s php a podobnymi vecami moc zaoberat robim to len kvoli webu./
V souboru config.php
Na stránce Ke stažení je uvedeno:
* vývojový režim je možné deaktivovat přidaním $dev = false; do config.php.

pokud je v souboru uvedeno $dev = true;
Ve standardní verzi není vývojový režim zapnut.
Prosim kto by mi to vedel urobiť do funkčnej podoby... teda aby sa formular naozaj odoslal na mail, prosim informujte ma tu vlcibrloh.rpg@gmail.com
Ďakujem za akukolvrk pomoc ale som začiatočnik a naozaj netuším ako to urobiť kedže robim vsetko podla toho co pisete a nic :c
Ve verzi hostingového programu není podporována funkce mail(). Doporučeno: změna programu, popř. PHPMailer.
špatný vyběr hostingu, nic neobvykléhlo....
Strana: 1 2 další »