使用xampp使用php发送邮件

时间:2014-07-27 07:01:57

标签: php email xampp

我无法发送邮件,任何人都可以帮忙吗?我试图浏览谷歌但我仍然没有答案。 我正在使用名为XAMPP的应用程序,它可能是它的原因吗? XAMPP是否具有所有php功能?

这是mailform.php

<?php 
$to = "ratisharabidze@gmail.com"; 
$subject = "Test mail"; 
$message = "Hello! This is a simple email message."; 
$from = "ratisharabidze@yahoo.com"; 
$headers = "From: $from"; 
mail($to,$subject,$message,$headers); 
echo "Mail Sent."; 
?>

这是一个form.html

<html> 
<body> 
<?php 
function spamcheck($field) 
{ 
    //eregi() performs a case insensitive regular expression match 
    if(eregi("to:",$field) || eregi("cc:",$field)) 
    { 
        return TRUE; 
    } else 
    { 
        return FALSE; 
    } 
} //if "email" is filled out, send email 

if (isset($_REQUEST['email'])) 
{ 
    //check if the email address is invalid 
    $mailcheck = spamcheck($_REQUEST['email']); 
    if ($mailcheck==TRUE) 
    { 
        echo "Invalid input";
    } 
    else 
    { 
        //send email 
        $email = $_REQUEST['email'] ; 
        $subject = $_REQUEST['subject'] ; 
        $message = $_REQUEST['message'] ; 
        mail("someone@example.com", "Subject: $subject", $message, "From: $email" ); 
        echo "Thank you for using our mail form"; 
    } 
} 
else 
//if "email" is not filled out, display the form 
{ 
    echo "<form method='post' action='mailform.php'> 
    Email: <input name='email' type='text' /><br /> 
    Subject: <input name='subject' type='text' /><br /> 
    Message:<br /> <textarea name='message' rows='15' cols='40'> </textarea><br /> 
    <input type='submit' /> 
    </form>";
?> 

</body> 
</html>

2 个答案:

答案 0 :(得分:2)

看看PHPMailer;比PHP Mail()函数要好得多:)

答案 1 :(得分:1)

由于您是新手,最简单的方法是使用免费gmail SMTP server

php.ini中修改XAMPP(在控制台中,点击config旁边的apache按钮,然后选择php.ini)。

在该文件中找到以下行。通过从行的开头删除sendmail_path取消注释semi-colon

;sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

接下来为gmail配置sendmail settings

smtp_server应为mail.gmail.com。auth_usernameauth_password将是您的Gmail用户名和密码。 smtp_port应为465。

重启XAMPP,如果一切正常,你应该好好去。