如何发送和制作一个php电子邮件表单

时间:2014-04-22 21:57:51

标签: php forms email-validation activation-codes

好的我每次尝试都会这样,但我不能使用xampp和thunderbird,所以我尝试制作一个电子邮件表单,以便人们可以联系我,但我有正确的代码,但它不会发送到我的gmail我做错了什么。并且需要激活php,以便他们可以注册我的网站。

<form action="test1.php" method="POST">
<p>Name</p> <input type="text" name="name">
<p>Email</p> <input type="text" name="email">
<p>Phone</p> <input type="text" name="phone">

<p>Request Phone Call:</p>
Yes:<input type="checkbox" value="Yes" name="call"><br />
No:<input type="checkbox" value="No" name="call"><br />

<p>Website</p> <input type="text" name="website">

<p>Priority</p>
<select name="priority" size="1">
<option value="Low">Low</option>
<option value="Normal">Normal</option>
<option value="High">High</option>
<option value="Emergency">Emergency</option>
</select>
<br />

<p>Type</p>
<select name="type" size="1">
<option value="update">Website Update</option>
<option value="change">Information Change</option>
<option value="addition">Information Addition</option>
<option value="new">New Products</option>
</select>
<br />

<p>Message</p><textarea name="message" rows="6" cols="25"></textarea><br />
<input type="submit" value="Send"><input type="reset" value="Clear">
</form>

那个form.html和我的php是test1.php

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$call = $_POST['call'];
$website = $_POST['website'];
$priority = $_POST['priority'];
$type = $_POST['type'];
$message = $_POST['message'];
$formcontent=" From: $name \n Phone: $phone \n Call Back: $call \n Website: $website \n            Priority: $priority \n Type: $type \n Message: $message";
$recipient = "dstokesncstudio@gmail.com";
$subject = "Contact Form";
$mailheader = "From: $email \r\n";
mail($recipient, $subject, $formcontent, $mailheader) or die("Error!");
echo "Thank You!" . " -" . "<a href='form.html' style='text-        decoration:none;color:#ff0099;'> Return Home</a>";
?>

1 个答案:

答案 0 :(得分:0)

您是在Linux或其他类Unix系统上托管吗?如果是这样,根据托管页面的服务器的位置,您需要确保sendmail或postfix实际上正在运行。

作为root用户,你可以运行'mailq'(参见手册页)来查看消息是否正在排队,但是没有正在运行的守护进程正在处理它。

同时仔细检查您的垃圾邮件文件夹,看看它是否被gmail标记为。