【发布时间】:2013-04-22 11:07:16
【问题描述】:
我只是想知道如果此 PHP 代码可用于验证 HTML 联系表单输入,是否有人可以提供帮助。我按照教程创建了这个 PHP 验证,但我不确定它是否会起作用。我还没有虚拟主机来测试它,但如果有人有服务器,如果有人能帮我一个忙,如果你可以发送/接收电子邮件,我将不胜感激。谢谢!!
我正在使用 jQuery 验证插件在客户端验证表单,这是教程 http://www.youtube.com/watch?v=rdsz9Ie6h7I
HTML 表单:
<form action="contact.php" method="post">
<label for="yourname">Your Name:</label>
<input type="text" name="YourName"/>
<label for="youremail">Your Email:</label>
<input type="text" name="YourEmail" />
<label for="yourmessage">Your Message:</label>
<textarea name="YourMessage"></textarea>
<fieldset>
<input type="submit" id="submit" value="Send"/>
<input type="reset" id="reset" value="Reset"/>
</fieldset>
PHP Code:
<?php
/* Subject and Email Variables */
$emailSubject = 'Email from site visitor';
$webMaster = 'YourEmail@mail.com';
/* Getting Form Data Variables */
$nameField = $_POST['YourName'];
$emailField = $_POST['YourEmail'];
$messageField = $_POST['YourMessage'];
$body = <<<EOD
<br><hr><br>
Name: $YourName <br>
Email: $YourEmail <br>
Message: $YourMessage <br>
EOD;
$headers = "From: $YourEmail\r\n";
$headers .= "Content-type: text/html\r\n";
$success = mail($webMaster, $emailSubject, $body, $headers);
$theResults = <<<EOD
<html>
<head>
</head>
<body>
<p style="font-size:12px;font-family:Tahoma,Verdana;">Thanks for your Message.</p>
</body>
</html>
EOD;
echo "$theResults";
?>
【问题讨论】:
-
您不需要异地服务器来测试您的 PHP。只需安装XAMPP。
-
仅供参考,如果您在本地安装了 php 5.4,它会自带用于测试的 Web 服务器 php.net/manual/en/features.commandline.webserver.php
-
为什么不在网络服务器上运行?
-
感谢您的评论。是的,我使用过 xampp,但我收到错误通知:未定义变量:C:\xampp\htdocs\site3\contact.php 中的 YourName 第 17 行也用于其他输入。老实说,我对 PHP 服务器端的东西不太熟悉,但我会尝试解决它。感谢您提供的链接,我会检查一下。
-
该通知是因为您使用了错误的变量名...请注意下面我的回答中的 #2。
标签: php html forms validation