• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Nie działający formularz kontaktowy php

+1 głos
429 wizyt
pytanie zadane 11 stycznia 2023 w PHP przez Tadeusz Kwoka Nowicjusz (170 p.)
edycja 11 stycznia 2023 przez Tadeusz Kwoka

Witam.
Jestem tutaj nowy więc od razu zaznaczę, że z PHPa jestem totalnym laikiem.
Od kilku dni piszę stronę i mam problem formularzem kontaktowym przeglądnąłem już dziesiątki filmików i tutoriali w Internecie, nawet kilka gotowych kodów.... i dalej nie umiem tego ruszyć. Próbowałem użyć serwerów googla SMTP żeby sprawdzić czy wszystko działa i niestety nie wysyła maili. Po wpisaniu danych do formularza strona przekierowała użytkownika do podstrony z podziękowaniami, ale żadnego maila nie wysłała. Nie wiem czy problem jest w kodzie, czy leży gdzieś indziej. Bardzo proszę o pomoc i wyrozumiałość

<?php

$name = $_POST["name"];
$email = $_POST["email"];
$subject = $_POST["subject"];
$message = $_POST["message"];


try {
    $mail = new PHPMailer();
    $mail->isSMTP();
    $mail->Host = 'smtp.gmail.com';
    $mail->Port = 465;
    $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
    $mail->SMTPAuth = true;

    $mail->Username = '..........';
    $mail->Password = '..........';

    $mail->CharSet = 'UTF-8';
    $mail->setFrom($email, 'Test działania poczty');
    $mail->addAddress('tadekkw123@gmail.com');
    $mail->addReplyTo('biuro@domena.pl', 'Biuro');

    $mail->isHTML(true);
    $mail->Subject = $_POST['subject'];

    $message = $_POST['message'];
    

    $mail->addAttachment('img/html-ebook.jpg');

    $mail->send();


}	catch (Expection $e){
    echo "Błąd wysyłania maila: {$mail->ErrorInfo}";
}




 else {

header('Location: index.php');
exit();
};
?>

 

komentarz 11 stycznia 2023 przez VBService Ekspert (256,660 p.)
1. Czy ten kod uruchamiasz na swoim domowym komputerze (tzw. localhost)?

2. Jeżeli na powyższy: TAK, to czy używasz np. XAMPP-a?
komentarz 12 stycznia 2023 przez Tadeusz Kwoka Nowicjusz (170 p.)
Tak, używałem XAMPP-a
komentarz 12 stycznia 2023 przez Nudzi mi się Gaduła (4,460 p.)
Czy pojawia się jakiś błąd w linii 37? Jeżeli masz dalej redirect możesz dodać die/exit po wyświetleniu wyjątku.
komentarz 13 stycznia 2023 przez VBService Ekspert (256,660 p.)
edycja 13 stycznia 2023 przez VBService

@Tadeusz Kwoka,  How to send email from XAMPP?

 

BTW, w podanym przez Ciebie kodzie brakuje odniesienia do if-a dla else

<?php

??
 
$name = $_POST["name"];
$email = $_POST["email"];
$subject = $_POST["subject"];
$message = $_POST["message"];
 
 
try {
    ... 
} catch (Expection $e) {
    echo "Błąd wysyłania maila: {$mail->ErrorInfo}";
} 
 
 
else {
    header('Location: index.php');
    exit();
}
?>

 

nigdzie nie jest użyta wartość z 

$name = $_POST["name"];

 

tak samo

$subject = $_POST["subject"];

bo ma zapis

$mail->isHTML(true);
$mail->Subject = $_POST['subject'];

 

to samo

$name = $_POST["name"];
$email = $_POST["email"];
$subject = $_POST["subject"];
$message = $_POST["message"];

jest zapis

    $mail->isHTML(true);
    $mail->Subject = $_POST['subject'];
 
    $message = $_POST['message'];     
 
    $mail->addAttachment('img/html-ebook.jpg');

 

Po wpisaniu danych do formularza strona przekierowała użytkownika do podstrony z podziękowaniami

tu nie ma żadnego przekierowania

    ...

    $mail->addAttachment('img/html-ebook.jpg');
 
    $mail->send(); 
 
}   catch (Expection $e) {
    echo "Błąd wysyłania maila: {$mail->ErrorInfo}";
}

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
4 odpowiedzi 3,644 wizyt
pytanie zadane 16 czerwca 2019 w HTML i CSS przez pietia213 Dyskutant (8,110 p.)
0 głosów
3 odpowiedzi 419 wizyt
pytanie zadane 30 sierpnia 2019 w PHP przez Ania2019 Użytkownik (530 p.)
0 głosów
1 odpowiedź 471 wizyt
pytanie zadane 1 listopada 2018 w PHP przez marek90552 Początkujący (430 p.)

93,776 zapytań

142,732 odpowiedzi

323,384 komentarzy

63,379 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...