sh4kr 0 Zgłoś post Napisano Listopad 26, 2015 Cześć! Potrzebuję pomocy. Poszukuję skryptu, który pozwoli wykonać pewną rzecz. Mianowicie mam na stronie pole "Podaj e-mail" po podaniu uzupełnieniu tego pola i kliknięciu "Wyślij" chciałbym, aby na ten e-mail została wysłana wiadomość (stała - czyli taka sama dla każdego kto podaje email). Czy ktoś powie mi jak to zrobić? Albo czego szukać w Google? Dzięki za pomoc! Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość Filip Nowacki Zgłoś post Napisano Listopad 26, 2015 http://php.net/manual/en/function.mail.php Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość l3szcz Zgłoś post Napisano Listopad 26, 2015 <?php if(!isset($_POST['submit'])) // sprawdzamy czy formularz nie wysłany { ?> <form method="POST" action=""> <label for="email">Podaj adres E-Mail: <input type="email" name="email" placeholder="jankowalski@mail.com"> <input type="submit" name="submit" value="Wyślij"> </form> <?php } else if(isset($_POST['submit'])) { // jeśli wysłano przechodzimy dalej $email = $_POST['email']; if(empty($email) { echo "Podaj adres E-mail!"; // brak adresu e-mail } $check = filter_var($email, FILTER_VALIDATE_EMAIL); if($check) { // email poprawny mail($email, "Tytuł wiadomosci", "wiadomosc"); // nie zapomnij o dodaniu headerów, te znajdziesz w linku Filipsia } else { echo "Adres E-mail niepoprawny!"; } } ?> Udostępnij ten post Link to postu Udostępnij na innych stronach
sh4kr 0 Zgłoś post Napisano Listopad 26, 2015 <?php if(!isset($_POST['submit'])) // sprawdzamy czy formularz nie wysłany { ?> <form method="POST" action=""> <label for="email">Podaj adres E-Mail: <input type="email" name="email" placeholder="jankowalski@mail.com"> <input type="submit" name="submit" value="Wyślij"> </form> <?php } else if(isset($_POST['submit'])) { // jeśli wysłano przechodzimy dalej $email = $_POST['email']; if(empty($email) { echo "Podaj adres E-mail!"; // brak adresu e-mail } $check = filter_var($email, FILTER_VALIDATE_EMAIL); if($check) { // email poprawny mail($email, "Tytuł wiadomosci", "wiadomosc"); // nie zapomnij o dodaniu headerów, te znajdziesz w linku Filipsia } else { echo "Adres E-mail niepoprawny!"; } } ?> Dzięki za kod. Wrzuciłem to do pliku index.php i wyrzuca mi błąd w linii if(empty($email) { O co chodzi z tymi headerami? Sorry, troche jestem zielony w te kolcki. Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość l3szcz Zgłoś post Napisano Listopad 26, 2015 Mój bład. Dodaj jeszcze jedno ) na końcu czyli: if(empty($email))Headery są ważne jeśli chcesz wysyłać wiadomości z polskimi znakami czy też ostylowane w html. Nie chce mi się teraz szukać ale masz tak mniej więcej opisane w linku Filipsia. English wymagany Udostępnij ten post Link to postu Udostępnij na innych stronach
sh4kr 0 Zgłoś post Napisano Listopad 26, 2015 (edytowany) Teraz jest ok, nie wyrzuca błędu. Jednak po wpisaniu maila, nie dostaje nic na maila. Zastanawiam się czy nie trzeba tam gdzieś jeszcze dopisać z jakiego maila to ma być przesłane. EDIT: Bo wychodzi jakbym sobie sam maila wysłał, ze swojego maila tylko przez formularz na zewnętrznej stronie. Edytowano Listopad 26, 2015 przez sh4kr (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość Filip Nowacki Zgłoś post Napisano Listopad 26, 2015 (edytowany) Dodane nagłówki na szybko <?php if(!isset($_POST['submit'])) // sprawdzamy czy formularz nie wysłany { ?> <form method="POST" action=""> <label for="email">Podaj adres E-Mail: <input type="email" name="email" placeholder="jankowalski@mail.com"> <input type="submit" name="submit" value="Wyślij"> </form> <?php } else if(isset($_POST['submit'])) { // jeśli wysłano przechodzimy dalej $email = $_POST['email']; if(empty($email)) { echo "Podaj adres E-mail!"; // brak adresu e-mail } $check = filter_var($email, FILTER_VALIDATE_EMAIL); if($check) { // email poprawny $headers = 'From: no-reply@mydomain.com' . "\r\n" . 'Reply-To: no-reply@mydomain.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); mail($email, "Tytuł wiadomosci", "wiadomosc", $headers); } else { echo "Adres E-mail niepoprawny!"; } } ?> Edytowano Listopad 26, 2015 przez Filipsiu (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Gość Rafiki Zgłoś post Napisano Listopad 27, 2015 tytuł wiadomości warto kodować w base64 aby wszędzie wyświetlał się prawidłowo (tj. bez krzaków) $temat= "=?UTF-8?B?".base64_encode("Polskie znaki ęóąśłżźćń")."?="; Udostępnij ten post Link to postu Udostępnij na innych stronach