Witam mam problem z prostym skryptem mail. php i formularzem. Problem polega na tym iż jeśli w pisze w niego jakikolwiek e-mail lub ktoś chce do mnie wysłać podając swój e-mail z tego formularza to poczta nie dochodzi a jest tylko wiadomość ze wszystko ok. A jak bez podania swego adresu e-mail to wszystko dochodzi do mnie? Dziwny problem może tutaj mógłby mi udzielić rady co zrobić??
@duchop43 podaj proszę link do tego skryptu i opisz jeden przykład, kiedy formularz nie działa (np. kogo adres e-mail został podany w formularzu jako do odpowiedzi).
witam skrypt jest na mojej stronie szumiglowka.pl a link już podaje umieszczony jest na podstronie http://szumiglowka.pl/kontakt.php formularz działa tzn przychodzą e-maile jak nie ma w polu od kogo podanego adresu e-mail tylko temat i treść a jak wpisze się w polu jakikolwiek e-mail to nie przechodzi nic a link do skryptu https://serwer1677112.home.pl/homeftp/index.php i tram jest skrypt mail.php
podaj kod funkcji wysyłającej maila, a nie samego formularza to podam Ci błąd, brakuje pewnie ostatniej zmiennej wymaganej w home.
Witam podaje kod skryptu <?php $to = 'szumiglowka@serwer1677112.home.pl'; $subject = $_POST['subject']; $message = $_POST['message']; $headers = 'From:' . $_POST['email'] . "\r\n" . 'Content-type: text/html; charset=utf-8'; mail($to, $subject, $message, $headers); echo 'Wszystko ok'; ?> a sam formularz <form id="formularzKontaktowy" class="form-horizontal" action="mail.php" method="post"> <div class="control-group"> <label class="control-label" for="inputSubject">Temat</label> <div class="controls"> <input type="text" name="subject" class="input-xlarge" id="inputSubject" placeholder="Temat wiadomości"> </div> </div> <div class="control-group"> <label class="control-label" for="inputEmail">Email</label> <div class="controls"> <input type="text" name="email" class="input-xlarge" id="inputEmail" placeholder="Email"> </div> </div> <div class="control-group"> <label class="control-label" for="inputMessage">Wiadomość</label> <div class="controls"> <textarea type="text" name="message" class="input-xlarge" id="inputMessage" placeholder="Twoja wiadomość" rows="6"></textarea> </div> </div> <div class="control-group"> <div class="controls"> <button type="submit" class="btn btn-primary">Wyślij wiadomość</button> </div> </div> </form>
Zamień: Code: $headers = 'From:' . $_POST['email'] . "\r\n" . Na Code: $headers = 'From: adres@natwoimserwerze.pl\r\n" . Powinno ruszyć. Wysyłka może być jedynie z adresów na danym serwerze home. piszę z telefony więc nie wiem czy literówki nie ma.
PHP: $headers = "From: adres@natwoimserwerze.pl\r\n"; Drobna literówka @TheL , ale może napsuć krwi A zmienną $_POST['email'] dodałbym np. tak: PHP: $message = "Wiadomość od ". $_POST['email'] . ": \r\n";$message .= $_POST['message']; Możesz też zastosować: PHP: $headers = "From: adres@natwoimserwerze.pl\r\n";$headers .= "Reply-to: ".$_POST['mail']."\r\n"; Co ułatwi Ci odpowiadanie na maila.
witam ponownie kod zmieniłem coś ruszyło, ale jako adres nadawcy otrzymuje swój własny adres serwera, a nie adresy e-mail z których zostały nadane wiadomości kod obecnie wygląda tak <?php $to = 'szumiglowka@szumiglowka.pl'; $subject = $_POST['subject']; $message .= $_POST['message']; $headers = "From: adres@natwoimserwerze.pl\r\n"; $headers = "Content-type:text/html;charset=UTF-8" . "\r\n"; mail($to,$subject,$message,$headers); echo 'Wszystko ok'; ?> a wiadomości jakie dostaje są od serwer1677112@serwer1677112.home.pl
Code: $to = 'szumiglowka@serwer1677112.home.pl'; $subject = $_POST['subject']; $message = $_POST['message']; $headers = 'From:' . $_POST['email'] . "\r\n" . Powyższy kod zamieniłbym na poniższy i powinno działać: Code: $to = 'szumiglowka@serwer1677112.home.pl'; $subject = $_POST['subject']; $message = $_POST['message']; $headers = 'From: adres@natwoimserwerze.pl\r\n'; $headers .= 'Reply-to:' . $_POST['email'] . "\r\n" ;
Żaden kod z powyższych nie jest dobry ja też nie mam za bardzo czasu więc na szybko sklejony Code: <?php $to = 'szumiglowka@szumiglowka.pl'; $subject = $_POST['subject']; $message = '<b>Wiadomość od:</b> '.$_POST['email'].'<br><b>Treść wiadomości:</b><br>'.$_POST['message']; $headers = "From: Email ze strony < szumiglowka@szumiglowka.pl >\n"; // $headers .= "Cc: Kopia do < kopia@dokogos >\n"; $headers .= "X-Sender: Email ze strony < szumiglowka@szumiglowka.pl >\n"; $headers .= 'X-Mailer: PHP/' . phpversion(); $headers .= "X-Priority: 1\n"; // Urgent message! $headers .= "Return-Path: szumiglowka@szumiglowka.pl\n"; // Return path for errors $headers .= "MIME-Version: 1.0\r\n"; $headers .= "Content-Type: text/html; charset=utf-8\n"; $headers .= "Reply-to: ".$_POST['email']."\r\n"; if ($_POST['message']<>'') { if( mail($to, $subject, $message, $headers)) { echo 'Wiadomość wysłana'; } } else { echo "<font style='color:red;'><b>Wpisz treść wiadomości</b></font>"; } ?> <form id="formularzKontaktowy" class="form-horizontal" action="phpmail.php" method="post"> <div class="control-group"> <label class="control-label" for="inputSubject">Temat</label> <div class="controls"> <input type="text" name="subject" class="input-xlarge" id="inputSubject" placeholder="Temat wiadomości"> </div> </div> <div class="control-group"> <label class="control-label" for="inputEmail">Email</label> <div class="controls"> <input type="text" name="email" class="input-xlarge" id="inputEmail" placeholder="Email"> </div> </div> <div class="control-group"> <label class="control-label" for="inputMessage">Wiadomość</label> <div class="controls"> <textarea type="text" name="message" class="input-xlarge" id="inputMessage" placeholder="Twoja wiadomość" rows="6"></textarea> </div> </div> <div class="control-group"> <div class="controls"> <button type="submit" class="btn btn-primary">Wyślij wiadomość</button> </div> </div> </form> to chociaż sprawdza czy mail na pewno został wysłany i nie wysyła maila od razu po uruchomieniu pliku
po za tym nie dasz rady osiągnąć adresów z których wysyłany jest email w polu From (Od) on się pojawi w polu Do jeśli wybierzesz odpowiedz.
@Mariusz nie mogło mu się nie udać skodo podałem dokładny kod (sprawdzony) @casar faktycznie nie zauważyłem
Dziękuję serdecznie za pomoc @TheL a przy okazji mam jeszcze jedno pytanie jakbym chciał dołączyć możliwość dodawania plików w różnej postaci od osób wysyłających wiadomości chodzi mi o załączniki czy to w pdf czy w innym formacje jak najlepiej to by zrobić z pozycji php. Pytam bo dopiero php się uczę, a widzę że chętnie udzielacie porad i dobrych rad za co jeszcze raz serdecznie dziękuję .