我得到这个HTML消息" 405不允许nginx"当我试图发布到同一页面时。
HTML:
<form action="" method="post" class="contact-form-col">
PHP
<?php
if(isset($_POST['submit'])){
$msg = 'Name: ' .$_POST['name'] ."\n"
.'Email: ' .$_POST['email'] ."\n"
.'Phone: ' .$_POST['phone'] ."\n"
.'Message: ' .$_POST['message'];
mail('EMAIL NAME' , 'Contact form message', $msg);
echo "Message was send";
} else {
echo "Something went wrong.";
}
?>
我的问题是,我做错了什么,如何在不重定向到contact.php页面的情况下将消息保留在表单div中?
在这种情况下,还有必要吗?当我没有回应任何东西以及#34;电子邮件发送&#34;?
答案 0 :(得分:0)
如果您从html页面提交表单,则需要使用php脚本来处理请求。
但是如果html代码在php页面中,你的代码很好但是有一个小错误
解决方案是
<?php
if(isset($_POST['submit'])){
$msg = 'Name: ' .$_POST['name'] ."\n"
.'Email: ' .$_POST['email'] ."\n"
.'Phone: ' .$_POST['phone'] ."\n"
.'Message: ' .$_POST['message'];
$go = mail($to, $subject, $msg, $headers);
if(!$go) {
echo "Something went wrong.";// error
} else {
echo "Message was send";// correct
}
}
?>
我希望这对你有用。