我正在尝试在我正在处理的网站上设置联系表格,其代码如下所示:
<form action="contact.php" method="POST">
<ul>
<li>
<label for="name">Name:</label><br>
<input type="text" name="name" />
</li>
<br>
<li>
<label for="email">E-mail:</label><br>
<input type="email" name="email" />
</li>
<br>
<li>
<div id="label">Enquiry:</div>
<select name="interest"><br>
<option value="Wedding">Wedding</option>
<option value="Engagement/Couple">Engagement or Couple</option>
<option value="Portrait">Portrait</option>
<option value="Family">Family</option>
<option value="Children">Children</option>
</select>
</li>
<br>
<li>
<label for="message">Message:</label><br>
<textarea name="message" cols="40" rows="6"></textarea>
</li>
<br>
<li>
<button class="submit" type="submit" value="Submit">Submit Form</button>
</li>
</ul>
</form>
最初我只是将表单操作作为 mailto:myemail@example.com 但我显然更希望用户只提交表单并发送电子邮件,而不是仅仅打开他们的电子邮件应用程序。我正在尝试构建一个 PHP 脚本来执行此操作,但还没有运气,可能是因为这是我第一次看 PHP,更不用说尝试编写它了。
我查看了许多不同的示例并深入研究了 PHP 手册以寻求帮助,但无论我写什么都会导致相同的结果,按下表单上的提交按钮并且在我的收件箱中什么也没有收到。所以我开始了一种故障查找过程来尝试帮助确定问题。我会从非常基本的 PHP 脚本开始,然后尝试在每个脚本中添加更多内容,看看哪里出错了。
我首先将表单操作更改为 php 测试脚本,如下所示:
<?php
phpinfo() ;
?>
这工作正常,并按原样显示了 php 信息页面。太好了,所以我知道我的主机支持 php 并安装了它。那么这不是问题所在。其次,我将表单操作更改为以下代码:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
它再次按预期工作,显示 Hello World 段落。在此之后,我尝试了我能想到的最基本的 php 邮件脚本,它看起来像这样:
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php
mail('myemail@example.com', 'Contact Form', 'This is a test');
?>
</body>
</html>
当我按下表单上的提交按钮时,所有这一切都成功了,在浏览器的地址栏中显示了一个空白页面,其中包含我的 php 脚本的 url,并且我没有收到任何电子邮件。不在我的收件箱或垃圾文件夹中,无处可去。由于这是一个如此简单的脚本,我一开始就有两道思路。1是我只是在做一些非常基本的错误,考虑到我对php的了解非常有限,这很有可能。2是发生了更复杂的事情,也许我的主机的php设置不适合我正在尝试做的事情?我不知道。
对于这个问题冗长,我深表歉意,我只是想展示我到目前为止所做的事情,希望它能在你们能给我的任何帮助下对你们有所帮助。非常感谢您对我的问题的任何帮助,谢谢。