Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Mały kłopot z funkcją mail()
#1
Witam! Postanowiłem poznać zasadę działania funkcji mail(), ale coś nie bardzo idzie.. Mianowicie składnia jest dobra mail($do, $temat, $tresc, 'from: czesiek'), niestety nie działa... Wiem, że muszę mieć postawiony serwer poczty i tutaj moje pytanie bo z tego względu to nie działa.. Jaki serwer poczty/gdzie go zdobyć ? gdzieś w necie pisali coś o thunderbird'zie, ale nie chce działać.. Mogę liczyć na pomoc ?
Pozdrawiam!
Odpowiedz
#2
Sprawdź najpierw czy działa funkcja mail(). Sprawdź phpinfo(). Jeśli funkcja mail() działa to pokaż kod.
Odpowiedz
#3
phpinfo pokazało coś takiego:
Kod:
mail.add_x_header    Off    Off
mail.force_extra_parameters    no value    no value
mail.log    no value    no value

sendmail_from    no value    no value
sendmail_path    no value    no value

kod bardzo prosty bez weryfikacji bo do testow:

Kod:
<?php
if(isset($_POST[‘wyslij’]))
{
    mail($do, $_POST[‘temat’], $_POST[‘wiadomosc’], "From:  $_POST[‘imie_nazwisko’]");
}
?>
<form method="post" action="index.php">
    Imię i nazwisko: <INPUT TYPE="TEXT" NAME="imie_nazwisko" size=20>
    Adres e-mail: <INPUT TYPE="TEXT" NAME="email" size=20>
    Temat: <INPUT TYPE="TEXT" NAME="temat" size=20>
    Wiadomość <TEXTAREA NAME="wiadomosc" rows=10 cols=30></TEXTAREA>
    <input type="submit" name="wyslij" value="wyślij">
  </form>

i jeszcze jedno: jak próbje wyslac meila za pomocą funckji mail() to wyskakuje taki błąd:
Kod:
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in D:\xampp\htdocs\kontakt.php on line 31
Odpowiedz
#4
Wiesz widzę w tym błędzie że nie może się połączyć z serwerem smtp do wysyłania e-maila. Mi się wydaje, że nie masz u siebie działającej funkcji mail(). Ale pewności nie mam niech wypowiedzą się eksperci.
Odpowiedz
#5
Odpalasz to na jakimś hostingu, czy na localhoscie? I pokaż cały kod, bo nie widzę skąd bierzesz zmienną $do.
[Obrazek: 2guxq1i.gif]
Odpowiedz
#6
odpalam to na localhoscie. dziamber dajże spokój... takie formularze są pikuś moge napisac
$do = [email protected] i juz... wkleilem to tak na szybko i pozmieniałem. Kod jest nie wazny tylko sam serwer pocztowy. Co jest z smtp i thunderbirdem...
Odpowiedz
#7
Różnie ludzie robią dlatego pytam o kod. Serwer masz skąd? Xamp, Krasnal, Wamp?
[Obrazek: 2guxq1i.gif]
Odpowiedz
#8
serwer najnowszy xampp... włączyłem mercury i cos zaczyna się dziać... wywaliło teraz błąd:

Kod:
Warning: mail() [function.mail]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST' instead in D:\xampp\htdocs\beautiful_nails\kontakt.php on line 31
Odpowiedz
#9
Jozeph jak masz problem z funkcją mail() (miałem podobne problemy), to wypróbuj tego: http://www.adam.krywko.pl/dobry-formularz-kontaktowy . Jest to napisany w php i js formularz, który po wprowadzeniu ustawień swojego konta pocztowego i przesłaniu na serwer wysyła e-maile + ma zabezpieczenia, że jeśli nie wypełnimy pól formularza to nie wysyła e-maila. Jest do użytku niekomercyjnego i komercyjnego. Sam to mam u siebie na www i działa dobrze Smile
Odpowiedz
#10
dzięki yolek, ale wole sam to wszystko zrobić... Js narazie zostawiam w spokoju a kodu jest tam na tyle duzo, że nie mam szans go przerobić do jutra... a chcialbym żeby to dzisiaj działało...

Tak więc po przeanalizowaniu poniższego błędu:

Kod:
Warning: mail() [function.mail]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Paris' for '2.0/DST' instead in D:\xampp\htdocs\beautiful_nails\kontakt.php on line 33

doszedłem do wniosku, że musze coś zrobić z funkcją "date_default_timezone_set() ". Po wpisaniu tego w google znalazłem informacje, że dla naszego położenia powinno być wpisane:
Kod:
date_default_timezone_set("Europe/Paris");
i teraz nie wywala błędów ani nic.. ale też nie wysyła meila Sad
A jak jest Panowie z domeną ??
Odpowiedz


Podobne wątki…
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Funkcja mail () - tryb odpowiedzi. pawstrze 1 2,299 20-12-2012, 00:14
Ostatni post: Pedro84
  Funkcja mail() - odświeżanie strony pawstrze 6 5,389 12-12-2012, 02:05
Ostatni post: andrzejhi
Toungue Funkcja w funkcji Radian 5 3,448 24-08-2012, 17:38
Ostatni post: Radian
  [PHP] Funkcja rekurencyjna dla drzewa binarnego Stap1989 1 1,773 11-08-2012, 22:30
Ostatni post: Marys
Question Przekazanie wyników z bazy danych przez funkcję mail atrapa 2 2,799 15-11-2011, 23:16
Ostatni post: atrapa

Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Sponsorzy i przyjaciele
SeoHost.pl