Sendmail folder does not exist in xampp directory?

后端 未结 2 959
长发绾君心
长发绾君心 2021-01-22 09:30

I am trying to send email from localhost but somehow mail is not being send to any email address. I am trying to configure email from localhost and found some s

相关标签:
2条回答
  • 2021-01-22 09:44

    You must have SMTP Server, so you can send mails
    Alternative solutions is to use externals one, like gmail for example

    First you should have a valid gmail credetials, after that go to php.ini and configure it as follow :

    [mail function]
    SMTP      = ssl://smtp.gmail.com
    smtp_port = 465
    username  = YOUR_GOOGLE_USERNAME
    password  = YOUR_GOOGLE_PASSWORD
    

    Restart your web server and try with the classic php mail() function

    Here is my yml SMTP Server configuration that i have used for a symfony project :

    parameters:
        mailer_transport: gmail
        mailer_host     : 127.0.0.1
        mailer_user     : anis.halayem@gmail.com
        mailer_password : ***my_gmail_password_secret***
        locale          : en
    

    You can setup your own local SMTP Server local SMTP Server

    __EDIT__

    Try with PHPMailer : PHPMailer - A full-featured email creation
    And the good thing with it, that it will let you debug what is causing troubles with sending mails using gmail smtp server

    First thing : are you behind proxy ? if it's the case, you have to configure the HTTP_PROXY/HTTPS_PROXY environment variables
    You can find useful documentations here and here

    Now, you can create a php test script that you can launch directly via commands line or using a web server

    <?php
    require_once    ('PHPMailer-master/class.phpmailer.php');
    require_once    ('PHPMailer-master/class.smtp.php');
    
    $mail               = new PHPMailer();
    $body               = "<h1> Sending HTML Mails using gmail</h1><p>it's great !!</p>";
    $mail->IsSMTP();                                        // telling the class to use SMTP
    $mail->SMTPDebug    = 1;                                // enables SMTP debug information (for testing)
    $mail->SMTPAuth     = true;                             // enable SMTP authentication
    $mail->SMTPSecure   = "tls";                            // sets the prefix to the servier
    $mail->Host         = "smtp.gmail.com";                 // sets GMAIL as the SMTP server
    $mail->Port         = 587;                              // set the SMTP port for the GMAIL server
    
    $mail->Username     = "YOUR_GMAIL_ACCOUNT"  ;           // GMAIL username
    $mail->Password     = 'YOUR_GMAIL_PASSWORD' ;           // GMAIL password
    
    $mail->SetFrom('VALID_USER@gmail.com', 'Anis Halayem');
    $mail->Subject    = "Test Send Mails";
    $mail->MsgHTML($body);
    $address = "VALID_USER@gmail.com";
    $mail->AddAddress($address, "USER NAME");
    
    // $mail->AddAttachment("images/phpmailer.gif");        // attachment
    // $mail->AddAttachment("images/phpmailer_mini.gif");   // attachment
    
    if(!$mail->Send()) {
        echo "Mailer Error: " . $mail->ErrorInfo;
    } 
    else {
        echo "Message sent!";
    }
    
    0 讨论(0)
  • 2021-01-22 09:57

    I encountered the same problem.
    It is very easy solve.
    Just follow these steps:
    First make sure that you are using Xampp v3.2.2 because that is the version I am using and about which I know.

    1. Copy and paste all the files "you" have created in htdocs folder anywhere on the pc.(so that they are not deleted).
    2. Uninstall Xampp.
    3. And then reinstall Xampp, but this time, DON'T UNCHECK THE "Fake Sendmail" option from the list when it asks "Select Components".
    4. And then follow the normal processes.

    And, you are done. The Sendmail would be normally installed.

    0 讨论(0)
提交回复
热议问题