• 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

Object Storage Arubacloud
0 głosów
248 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 (212,670 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 169 wizyt
pytanie zadane 5 kwietnia 2020 w C# przez tonn204 Mądrala (7,440 p.)
0 głosów
2 odpowiedzi 325 wizyt
pytanie zadane 25 maja 2019 w PHP przez manager96 Bywalec (2,050 p.)
0 głosów
0 odpowiedzi 163 wizyt
pytanie zadane 20 marca 2018 w Sieci komputerowe, internet przez Hiskiel Pasjonat (22,830 p.)

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 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.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...