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

Wysyłanie wiadomości email za pomocą formularza PHP i Xampp

0 głosów
98 wizyt
pytanie zadane 14 listopada 2020 w PHP przez Jarek1989 Nowicjusz (120 p.)

Witam,

zaczynam naukę programowania webowego z kursami zamieszczonymi na kanale pasja informatyki. Stworzyłem stronę w PHP z formularzem kontaktowym:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Jarosław Dzida - Contact form</title>

    <meta name="description" content="Opis strony w wyszukiwarce Google" />
    <meta name="keywords" content="słowa, kluczowe, podnoszące, stronę, w, wynikach, wyszukiwania" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />

    <link href="contact_form-style.css" rel="stylesheet" type="text/css" />

</head>
<body>


    <div class="contact_form">
        <form id="contact_form" method="POST" action="index.php">
            <input type="text" name="name" class="form-control" placeholder="Your Name" required>
            <br>
            <br>
            <input type="email" name="email" class="form-control" placeholder="Your Emali" required>
            <br>
            <br>
            <textarea name="message" class="form-control" placeholder="Message" cols="30" rows="10" required></textarea>
            <br>
            <br>
            <input type="submit" name="submit" class="form-control submit" value="SEND MESSAGE">
        </form>
    </div>
<?php

    if(isset($_POST['submit'])){

        $user_name = $_POST['name'];
        $user_email_subject = "Contact from my web form";
        $user_email = $_POST['email'];
        $user_message = $_POST['message'];

        $to = "jarek.dzida@onet.pl";
        $header = "Location: ".$user_email; 
        
        $email_body = "You have received an e-mail from ".$user_email.".\n\n".$user_message;    
    
        mail($to, $user_email_subject, $email_body, $header);

    }    
    
?>
</body>
</html>

Zainstalowałem program xampp i skonfigurowałem pliki php.ini i sendmail.ini

[php.ini]

[mail function]
; For Win32 only.
; http://php.net/smtp
SMTP=smtp.wp.pl
; http://php.net/smtp-port
smtp_port=465

; For Win32 only.
; http://php.net/sendmail-from
sendmail_from = jarekpoczta1989@wp.pl

; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
; http://php.net/sendmail-path
sendmail_path = "\"‪C:\xampp\sendmail\sendmail.exe\" -t"

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail().
;mail.force_extra_parameters =

; Add X-PHP-Originating-Script: that will include uid of the script followed by the filename
mail.add_x_header=Off

; The path to a log file that will log all mail() calls. Log entries include
; the full path of the script, line number, To address and headers.
;mail.log =
; Log mail to syslog (Event Log on Windows).
;mail.log = syslog
[sendmail.ini]
[sendmail]

; you must change mail.mydomain.com to your smtp server,
; or to IIS's "pickup" directory.  (generally C:\Inetpub\mailroot\Pickup)
; emails delivered via IIS's pickup directory cause sendmail to
; run quicker, but you won't get error messages back to the calling
; application.

smtp_server=smtp.wp.pl

; smtp port (normally 25)

smtp_port=465

; SMTPS (SSL) support
;   auto = use SSL for port 465, otherwise try to use TLS
;   ssl  = alway use SSL
;   tls  = always use TLS
;   none = never try to use SSL

smtp_ssl=ssl

; the default domain for this server will be read from the registry
; this will be appended to email addresses when one isn't provided
; if you want to override the value in the registry, uncomment and modify

;default_domain=mydomain.com

; log smtp errors to error.log (defaults to same directory as sendmail.exe)
; uncomment to enable logging

error_logfile=error.log

; create debug log as debug.log (defaults to same directory as sendmail.exe)
; uncomment to enable debugging

;debug_logfile=debug.log

; if your smtp server requires authentication, modify the following two lines

auth_username=jarekpoczta1989@wp.pl
auth_password=******

; if your smtp server uses pop3 before smtp authentication, modify the 
; following three lines.  do not enable unless it is required.

pop3_server=
pop3_username=
pop3_password=

; force the sender to always be the following email address
; this will only affect the "MAIL FROM" command, it won't modify 
; the "From: " header of the message content

force_sender=

; force the sender to always be the following email address
; this will only affect the "RCTP TO" command, it won't modify 
; the "To: " header of the message content

force_recipient=

; sendmail will use your hostname and your default_domain in the ehlo/helo
; smtp greeting.  you can manually set the ehlo/helo name if required

hostname=

Jednak Nie otrzymuję wiadomości na mój adres email. Pliki error.log i dump.log w ścieżce C:\xampp\sendmail nie pokazują żadnych błędów. Natomiast plik error.log w ściezce C:\xampp\apache\logs pokazuje taką wiadomość po każdej próbie wysłania wiadomości poprzez formularz: The filename, directory name, or volume label syntax is incorrect. Czy ktoś mógłby podpowiedzieć w jaki sposób skonfigurować pliki php.ini i sendmail.ini?

Serwer poczty wychodzącej - smtp.wp.pl
Port serwera poczty wychodzącej - 465
Tryb zabezpieczenia - SSL
Serwer wymaga uwierzytelnienia / włączonej autoryzacji SMTP

komentarz 14 listopada 2020 przez Ehlert Ekspert (205,650 p.)

zaczynam naukę programowania webowego z kursami zamieszczonymi na kanale pasja informatyki. 

O nieee crying lepiej zacznij z https://www.phpdevs.pl/spis-tresci-kursu-php

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

Podobne pytania

0 głosów
0 odpowiedzi 80 wizyt
pytanie zadane 5 kwietnia 2020 w C# przez tonn204 Mądrala (6,830 p.)
0 głosów
2 odpowiedzi 194 wizyt
pytanie zadane 25 maja 2019 w PHP przez manager96 Bywalec (2,010 p.)
0 głosów
0 odpowiedzi 102 wizyt
pytanie zadane 20 marca 2018 w Sieci komputerowe, internet przez Hiskiel Pasjonat (22,850 p.)

86,427 zapytań

135,187 odpowiedzi

300,309 komentarzy

57,184 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...