我在在线联系表单上创建了一个HTML / PHP。
插入所有信息后,返回index.html
我仍然没有收到来自网站的任何电子邮件。
我该怎么办?我应该设置smtp吗?
我使用smartermail pro 4.3作为我的电子邮件。
<?php
if(isset($_POST['submit'])) {
$msg = 'Company: '.$_POST['company']."\n"
.'Address: '.$_POST['address']."\n"
.'Website: '.$_POST['website']."\n"
.'Your Contact: '.$_POST['contact']."\n"
.'Email : '.$_POST['email']."\n"
.'Remark : '.$_POST['remark']."\n";
mail('sale@jadepack.com.sg', 'Online Enquiry', $msg);
header('location: index.html');
} else {
header('location: onlineenquiry.html');
exit(0);
}
?>
&#13;
[http://www.jadepack.com.sg/onlineenquiry.html![][1]][1]
[表格的图像] [1]
答案 0 :(得分:1)
在谷歌上搜索这些文件,您将被重定向到github,从那里下载代码。
1)class.smtp.php 2)class.phpmailer.php
将这两个文件包含在页面sendemail.php(下面给出的代码)
中
require_once('class.phpmailer.php');
require_once('class.smtp.php');
require_once('upass.php');
function sendEmail($to, $subject,$message){
$mail = new PHPMailer(); // defaults to using php "mail()"
$name = explode('@',$to);
$body = "Your email body goes here";
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = "smtp.gmail.com"; // SMTP server
$mail->SMTPDebug = 0; // enables SMTP debug information (for testing)
// 1 = errors and messages
// 2 = messages only
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
global $username;
global $password;
$mail->Username = $username;
$mail->Password = $password;
$mail->CharSet = 'UTF-8';
$mail->AddReplyTo("abc@abc.ae.com", "Notification");
$mail->SetFrom('abc@abc.ae.com', 'Notification');
$address = $to;
$mail->AddAddress($address, $name[0]);
$mail->Subject = $subject;
//$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test
$mail->MsgHTML($body);
if (!$mail->Send()) {
//echo "Mailer Error: " . $mail->ErrorInfo;
} else {
//echo "Message sent!";
}
}
//提供下面给出的upass.php代码
<?php
$username = "abc@abc.come"; // GMAIL username
$password = "xyz"; // GMAIL password
?>
答案 1 :(得分:0)
首先,我确定邮件功能正在发送电子邮件。您可以通过在<34; onlineenquiry.php&#34;中填写邮件电话以及来进行检查:
<?php
if(isset($_POST['submit'])) {
$msg = 'Company: '.$_POST['company']."\n"
.'Address: '.$_POST['address']."\n"
.'Website: '.$_POST['website']."\n"
.'Your Contact: '.$_POST['contact']."\n"
.'Email : '.$_POST['email']."\n"
.'Remark : '.$_POST['remark']."\n";
if (mail('sale@jadepack.com.sg', 'Online Enquiry', $msg)) {
header('location: index.html');
} else {
header('location: emailError.html');
}
} else {
header('location: onlineenquiry.html');
exit(0);
}
?>
然后:
作为建议,我建议使用具有SMTP支持(使用其他帐户)和SSL和TSL以及身份验证的基于HTML的电子邮件的库... PHPMailer 是最着名的之一。我鼓励你阅读并尝试一下。这样您就不依赖于本地主机。
Here I link you a simple example来自图书馆的资料库。