如何让这个PHP联系人表单工作?
我在一家餐厅得到了这个免费的引导程序。我正在尝试制作我的第一个联系人表单,但我不知道它是如何工作的,因为它与HMTL代码非常不同 我认为我必须更改PHP并将我自己的电子邮件地址设置为$toEmail,但当我尝试并在XAMPP上测试它时,它不起作用 我的PHP中有以下内容:如何让这个PHP联系人表单工作?,php,Php,我在一家餐厅得到了这个免费的引导程序。我正在尝试制作我的第一个联系人表单,但我不知道它是如何工作的,因为它与HMTL代码非常不同 我认为我必须更改PHP并将我自己的电子邮件地址设置为$toEmail,但当我尝试并在XAMPP上测试它时,它不起作用 我的PHP中有以下内容: <?php if (isset($_POST['submit'])) { $name = $_POST['name']; $email = $_POST['email']; $ToEmail = 'test
<?php
if (isset($_POST['submit'])) {
$name = $_POST['name'];
$email = $_POST['email'];
$ToEmail = 'test@test.com';
$EmailSubject = $_POST['subject'];
$mailheader = "From: ".$_POST["email"]."\r\n";
$mailheader .= "Reply-To: ".$_POST["email"]."\r\n";
$mailheader .= "Content-type: text/html; charset=iso-8859-1\r\n";
$MESSAGE_BODY = "Name: ".$_POST["name"]."<br>";
$MESSAGE_BODY .= "Email: ".$_POST["email"]."<br>";
$MESSAGE_BODY .= "Subject:".$_POST['subject']."<br />";
$MESSAGE_BODY .= "Message: ".nl2br($_POST["message"])."<br>";
if(mail($ToEmail, $EmailSubject, $MESSAGE_BODY, $mailheader))
{
echo "<script>alert('Mail was sent !');</script>";
echo "<script>document.location.href='http://localhost/restaurant/'</script>";
}
else
{
echo "<script>alert('Mail was not sent. Please try again later');</script>";
}
}
这在我的html中
<div class="inner contact">
<!-- Form Area -->
<div class="contact-form">
<!-- Form -->
<form id="contact-us" method="post" action="contact.php">
<!-- Left Inputs -->
<div class="col-md-6 ">
<!-- Name -->
<input type="text" name="name" id="name" required class="form" placeholder="Naam" />
<!-- Email -->
<input type="email" name="email" id="email" required class="form" placeholder="Email Adres" />
<!-- Subject -->
<input type="text" name="subject" id="subject" required class="form" placeholder="Onderwerp" />
</div><!-- End Left Inputs -->
<!-- Right Inputs -->
<div class="col-md-6">
<!-- Message -->
<textarea name="message" id="message" class="form textarea" placeholder="Bericht"></textarea>
</div><!-- End Right Inputs -->
<!-- Bottom Submit -->
<div class="relative fullwidth col-xs-12">
<!-- Send Button -->
<button type="submit" id="submit" name="submit" class="form-btn semibold">Verstuur Bericht</button>
</div><!-- End Bottom Submit -->
<!-- Clear -->
<div class="clear"></div>
</form>
</div><!-- End Contact Form Area -->
有人能给我指一下正确的方向吗?
我需要编辑哪些部分才能使其工作?邮件功能在localhostXAMPP中不起作用您应该将其作为服务器托管并运行它作为Dhinju Divakarans答案的替代方案,您可以更改邮件服务器设置以使用外部邮件服务器,例如gmail 我通过编辑/xampp/sendmail/sendmail.ini来实现这一点。查找以下代码并更改值。在我的情况下,以下方法很好:
smtp_server=smtp.googlemail.com
auth_username= (put the gmail email address here)
auth_password= your password
hostname=smtp.googlemail.de
我没有碰其他设置
也许你也想看看。你说的“不工作”是什么意思?它随时发送电子邮件吗?是PHP文件contact.PHP的名称吗?您的服务器上安装了PHP吗?也许这就是问题所在。除此之外,是的,你只需要做一点编辑。我建议您将$ToEmail更改为$ToEmail=$\u POST['email'],因为$ToEmail是稍后在mail方法中引用的变量。另一个$email变量似乎是多余的。是的,它的联系人是php,当我试图发送一封电子邮件时,它会说mail send,但随后它会转到一个找不到对象的页面,我正在使用apache和mysql对其进行本地测试。是的,apache是您的服务器,mysql是您的数据库,但您在apache上安装了php吗?您可以通过创建一个名为phpinfo.php的新php页面来验证这一点,该页面包含以下代码行:如果它向您发送错误消息,您可能没有安装php。感谢@AbcAeffchen修复了它,它现在工作得很好