Mail() w .php nie wysyła widomości


(Junior) #1

Witam, mam za zadanie zrobić formularz kontaktowy z opcją wysyłania na e-mail. Formularz mam gotowy, kod php również, umieściłem strone na cba, klikam wyślij. I pomimo braku błedu (nic sie nie pojawia) to wiadomość na pocztę e-mail nie dochodzi. Może wy zauważycie gdzieś błąd w kodzie, bo ja już nie potrafię...

?
...
$odbiorca="mariKal@opoczta.pl";
$temat="Formularz kontaktowy";
$naglowki="MIME-Version: 1.0\r\n";
$naglowki.="Content-type: text/html; charset=iso-8859-2\r\n";
$naglowki.="From: Strona WWW www.moje4strony.cba.pl \r\n";
$naglowki.="Reply-To: ".$_POST['email'];
mail($odbiorca, $temat, $tresc, $naglowki);
if (mail($odbiorca, $temat, $tresc, $naglowki))
{ echo "Wiadomośc została wysłana na podany adres e-mail";}
else {echo "Błąd wysyłania wiadomości! Prosze spróbować później.";}
?

(ra-v) #2

Jak rozumiem ww. kod wykonuje się po kliknięciu WYŚLIJ, czyli gdy POST nie jest puste.

 

Sprawdziłem ww. kod i do mnie mail przychodzi, ale na WP. Możliwe, że Onet (tam gdzie masz pocztę) oznacza tego maila jako spam, ponieważ wysyłasz ją bez autoryzacji. I albo ją odrzuca, albo wrzuca do spamu (zobacz jeszcze raz na pocztę).

Do wysyłki lepiej wykorzytać z phpmailera, który wysyła z autoryzacją z konkretnej skrzynki pocztowej.

 

 

I nie rób tak, bo to 2 raz wyśle maila:

mail($odbiorca, $temat, $tresc, $naglowki);
if (mail($odbiorca, $temat, $tresc, $naglowki))

Jeśli już to tak

$wyslany = mail($odbiorca, $temat, $tresc, $naglowki);
if ($wyslany)

(Junior) #3

Ja sprawdzałem ten kod na pocztach na onecie i gmailu. Z cba na żadne z kont pocztowych na tych serwerach mi nie wysłało. Zmieniłem hosting na inny darmowy i działa. Także temat do zamknięcia. Dziękuję za poświęcony czas;)


(emikscur123) #4

Przepraszam mógł byś mi pokazać cały kod tak zęby tez jak kliknę wysil wysyłało, dziękuje


(ziggurad) #5

Nie używaj mail(), skorzystaj np z: