簡體   English   中英

PHP郵件未使用ssmpt發送

[英]Php mail not sending using ssmpt

我正在做我的一個小項目,我想添加聯系表格,所以我做到了。 一切正常,除了似乎不發送電子郵件。

我已經安裝了ssmpt並正確配置了它:

#
# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
root=postmaster

# The place where the mail goes. The actual machine name is required no 
# MX records are consulted. Commonly mailhosts are named mail.domain.com

mailhub=smtp.gmail.com:587
UseSTARTTLS=YES
UseTLS=yes
AuthUser=myemail@gmail.com
AuthPass=mypasdword

# Where will the mail seem to come from?
#rewriteDomain=

# The full hostname
hostname=hidingthisforsecurity

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
#FromLineOverride=YES

我還配置了php.ini:

 ; For Unix only.  You may supply arguments as well (default: "sendmail -t -i").
 ; http://php.net/sendmail-path
 sendmail_path = /usr/sbin/ssmtp -t

這是我的代碼:

 <?php

 require 'config.php';

 $strContactEmail = "myemail@gmail.com"; //edit this to your email

 function sendError($strErr) {
         $strMsg = "<center><h2>Error: " . $strErr . "</h2></center>"; 
         die($strMsg);
 }

 $resDBCon= mysqli_connect($strDBHost, $strDBUser, $strDBPass, $strDBName) or sendError('Failed to connect to MySQL: ' . mysqli_connect_error());

 if (isset($_POST['submit'])) {
 $strUsername = $_POST['username'];
 $strEmail = $_POST['email'];
 $strSubject = $_POST['subject'];
 $strMessage = $_POST['comments'];

 if (!isset($strUsername) || !isset($strEmail) || !isset($strSubject) || !isset($strMessage)) {
     sendError('One or more fields has not been completed, please fill in everything');     
 }

 $strUsername = mysqli_real_escape_string($resDBCon, $strUsername);
 $strEmail = mysqli_real_escape_string($resDBCon, $strEmail);
 $strSubject = mysqli_real_escape_string($resDBCon, $strSubject);
 $strMessage = mysqli_real_escape_string($resDBCon, $strMessage);

 $strUsername = stripslashes($strUsername);
 $strEmail = stripslashes($strEmail);
 $strSubject = stripslashes($strSubject);
 $strMessage = stripslashes($strMessage);

 if (!filter_var($strEmail, FILTER_VALIDATE_EMAIL)) {
    sendError('Invalid email address! Please recheck your email');
 } elseif (!ctype_alnum($strUsername) && strlen($strUsername) > 10 && strlen($strUsername) <= 3) {
    sendError('Invalid username! Please make sure the username is alphanumeric and not too long or short');
 } elseif (!ctype_alnum($strSubject) && strlen($strSubject) < 5 && strlen($strSubject) > 10) {
    sendError('Invalid title! Please enter a valid subject, make sure it is alphanumeric and more than 5 and lesser than 10 characters long');
 } elseif (!ctype_alnum($strMessage) && strlen($strMessage) < 5 && strlen($strMessage) > 500) {
    sendError('Invalid message! Please enter a valid message, make sure it is alphanumeric and more than 5 and lesser than 500 characters long');
 }

 $strHeaders = "From: $strEmail" . "\r\n" . "CC: $strContactEmail";    
 $strMessage = wordwrap($strMessage, 70);

 $blnSent = mail($strContactEmail, $strSubject, $strMessage, $strHeaders);  

 if ($blnSent) {
    echo "<center><h2>Thank you for contacting us, you will receive an email from us within the next 48 hours</h2></center>";
 } else {
    sendError('Failed to send email');
 }

} else {

?>

<center>
<form class="form" name="form" method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">
   <input type="text" name="username" maxlength="10" placeholder="Enter Your Username">
   <input type="text" name="email" maxlength="25" placeholder="Enter A Valid Email">
   <input type="text" name="subject" maxlength="10" placeholder="Enter Your Subject">
   <textarea  name="comments" maxlength="500" cols="25" rows="6" placeholder="Enter Your Message"></textarea>
   <input type="submit" id="login-button" name="submit" value="Submit">
</form>
</center>

<?php 
 } 
 ?>

試試下面

登錄到您的Google電子郵件帳戶,然后轉到以下鏈接: https : //www.google.com/settings/security/lesssecureapps並將“訪問較不安全的應用程序”設置為“開”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM