【发布时间】:2015-08-31 12:14:51
【问题描述】:
表单位于fictiveapp.com/ 这是第二个包含姓名、电子邮件和消息的表单。
我遇到了两个问题。
405 错误 - 我通过添加 trailing slash“解决”了这个问题
404 错误 - 添加斜杠以解决上一个问题时,我得到了 404 错误。我对 PHP 很陌生,不确定我应该如何链接文件。我认为这与链接网站上的所有其他 html 文件一样,显然不是。
我将所有 index.html、html_form_send.php 和 contactthanks.php 都放在同一个顶级(第一)级目录中,以及第二级 CSS、JS、Font 和 Img 文件夹
所有相关代码如下
HTML
<div class="8u 12u$(small)">
<form name="htmlform" method="post" action="html_form_send.php">
<div class="row uniform 50%">
<div class="6u 12u$(xsmall)"><input type="text" name="name" id="name" placeholder="Name" /></div>
<div class="6u$ 12u$(xsmall)"><input type="email" name="email" id="email" placeholder="Email" /></div>
<div class="12u$"><textarea name="message" id="message" placeholder="Message" rows="4"></textarea></div>
</div>
<ul class="actions">
<li><input type="submit" value="Send Message" /></li>
</ul>
</div>
</form>
来自 html_form_send.php 的 PHP
<?php
$EmailFrom = "Michael.kalmykov.88@gmail.com";
$EmailTo = "Michael@kovcreation.com";
$Subject = "from fictive site";
$Name = Trim(stripslashes($_POST['Name']));
$Email = Trim(stripslashes($_POST['Email']));
$Message = Trim(stripslashes($_POST['Message']));
// validation
$validationOK=true;
if (!$validationOK) {
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
exit;
}
// prepare email body text
$Body = "";
$Body .= "Name: ";
$Body .= $Name;
$Body .= "\n";
$Body .= "Email: ";
$Body .= $Email;
$Body .= "\n";
$Body .= "Message: ";
$Body .= $Message;
$Body .= "\n";
// send email
$success = mail($EmailTo, $Subject, $Body, "From: <$EmailFrom>");
// redirect to success page
if ($success){
print "<meta http-equiv=\"refresh\" content=\"0;URL=contactthanks.php/\">";
}
else{
print "<meta http-equiv=\"refresh\" content=\"0;URL=error.htm\">";
}
?>
来自contactthanks.php的PHP
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Strict//EN">
<head>
<title>work already!</title>
<link rel="stylesheet" type="text/css" href="style.css" />
</head>
<body>
<div id="page-wrap">
<br /><br />
<h1>Your message has been sent!</h1><br />
<p><a href="index.html">Back to Site</a></p>
</div>
<script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
</script>
<script type="text/javascript">
_uacct = "UA-68528-29";
urchinTracker();
</script>
我确信它是愚蠢而简单的,但我已经搜索了几个小时的论坛,似乎找不到问题。
感谢您对此的任何帮助。
【问题讨论】:
-
尝试使用 php 重定向而不是 html