我为表单编写了一个简单的php脚本,测试了它,并按预期工作。但是当我真的将脚本添加到我正在处理的原始项目中时,它突然停止工作?我确信它与php脚本无关,因为它在我测试时正常工作;所以基本上我在想的是我可能写了action属性是错误的?我很确定这是一个菜鸟的错误。最后,我真的很新的PHP。表单动作属性无法正常工作
问候。
HTML代码:
<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-label="Close"><span aria-hidden="true">×</span></button>
<h4 class="modal-title" id="exampleModalLabel">New message</h4>
</div>
<div class="modal-body">
<form action="contact.html" method="post">
<div class="form-group">
<label name="email" class="control-label">Email:</label>
<input type="text" class="form-control" id="recipient-name">
</div>
<div class="form-group">
<label name="phone" class="control-label">Phone:</label>
<input type="text" class="form-control" id="recipient-mobile">
</div>
<div class="form-group">
<label name="message" class="control-label">Message:</label>
<textarea class="form-control img-responsive" rows="5" id="messageText"></textarea>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
<button type="button" id="resetText" class="btn btn-default">Reset</button>
<input type="button" value="Send message" name="send" class="btn btn-danger colorbg"/>
</div>
</div>
</div>
</div>
PHP代码:
<?php
if(isset($_POST['send'])){
$to = '[email protected]';
$subject = 'Solutions';
$mail = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$mailHeader = "From: $mail \r\n Phone: $phone";
$formcontent="Message: $message";
if (!filter_var($mail, FILTER_VALIDATE_EMAIL)) {
echo "<script language='javascript'>
alert('E-mail address is not valid');
var email = document.getElementById('recipient-name');
email.className += ' border-red';
</script>";
} else {
echo "<script language='javascript'>
var email = document.getElementById('recipient-name');
email.className = '';
email.className += ' form-control';
</script>";
if (mail($to , $subject, $formcontent, $mailHeader)) {
echo "<script>
window.setTimeout(function() {
window.location.href = 'test.html';
}, 3000);
</script>";
} else {
echo "<script language='javascript'>alert('There was an error. Please try again.')</script>";
}
}
}
?>
请注意,我上传的项目在我的网站,以实际测试脚本,以便该链接是什么像这样:website.com/project/index.html。我将行动更改为action="script/contact.php"
,action="./script/contact.php
,action="contact.php"
没有工作。
你的意思是停止工作? 404?空白页?什么都没发生?我觉得这个'<输入名称=“发送”>'应该与'类型=“提交”' – Berriel
什么也没有发生在所有 –
'<形式行动=“contact.html”方法=“邮报”'form'标签内>你是否指示Apache将'.html'文件视为PHP?如果不是,那就是你的问题。要么你做,要么将它重命名为'.php'。 –