php表单提交错误500
我正试图在我的网站上添加一个简单的带有recaptcha的联系人表单,但并不是很成功。每当我尝试测试我的表单时,我总是收到一个错误500。表单指向位于我的服务器上的单独php文件 我对php真的很陌生,我正在努力找出哪里出了问题。以下是表单的html:php表单提交错误500,php,forms,internal-server-error,Php,Forms,Internal Server Error,我正试图在我的网站上添加一个简单的带有recaptcha的联系人表单,但并不是很成功。每当我尝试测试我的表单时,我总是收到一个错误500。表单指向位于我的服务器上的单独php文件 我对php真的很陌生,我正在努力找出哪里出了问题。以下是表单的html: <form method="post" action="form.php" id="contact-form" class="col s12"> <div class="row"> <d
<form method="post" action="form.php" id="contact-form" class="col s12">
<div class="row">
<div class="input-field col m6 s12">
<input id="first_name" type="text" class="validate">
<label for="first_name">First Name</label>
</div>
<div class="input-field col m6 s12">
<input id="last_name" type="text" class="validate">
<label for="last_name">Last Name</label>
</div>
</div>
<div class="row">
<div class="input-field col s12">
<input id="email" type="email" class="validate"required>
<label for="email">Email</label>
</div>
</div>
<div class="row">
<div class="input-field col s12">
<textarea id="msg" class="materialize-textarea"></textarea>
<label for="msg">Message</label>
</div>
</div>
<div class="row">
<div class="col s12 m6">
<div class="g-recaptcha" data-sitekey="xxxx-Xxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxx" data-type="image"></div>
</div>
<div class="col s12 m6">
<button class="btn btn-large waves-effect waves-light" type="submit" name="action">Send Message</button>
</div>
</div>
</form>
我的php/html有什么问题吗?还是别的什么?我的Web服务器在Ubuntu 14.04上使用php5 fpm和nginx。谢谢你的帮助 线
echo '<p>Captcha failed.<p>'
应该是
$message2 = '<p><b>Here is a copy of your message: </b><br/><br/>'.$first_name.' '.$last_name.'wrote: <br/><br/></p><p>'.$msg.'</p>';
在PHP文件的开头(afrer
将HTML提交按钮更改为
<button class="btn btn-large waves-effect waves-light" type="submit" name="action" value="Send Message">Send Message</button>
发送消息
并修改您的php脚本
if语句
e、 g
$message2 = '<p><b>Here is a copy of your message: </b><br/><br/>'.$first_name.' '.$last_name.'wrote: <br/><br/></p><p>'.$msg.'</p>';
error_reporting(E_ALL);
ini_set('display_errors', 1);
<button class="btn btn-large waves-effect waves-light" type="submit" name="action" value="Send Message">Send Message</button>
<?php
if(isset($_POST['action']))
{
$secret='xxx-Xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
$sitekey='xxx-Xxxxxxxxxxxxxxx-xxxxxxxxxxxxxxxxxxxx';
$first_name=$last_name=$email=$msg="";
$email = test_input($_POST["email"]);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
$msg = test_input($_POST["msg"]);
if (isset($_POST['first_name'])) {
$first_name=$_POST['first_name'];
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
}
if (isset($_POST['last_name'])) {
$last_name=$_POST['last_name'];
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
}
$response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=$secret&response=".$captcha);
if ($response.success==false) {
echo '<p>Captcha failed.<p>';
exit;
}
$toEmail='contact@example.org';
$message = '<p><b>First Name: </b>'.$first_name.'</p>'.
'<p><b>Last Name: </b>'.$last_name.'</p>'.
'<p><b>Email: </b>'.$email.'</p>'.
'<p><b>Message: </b><br/>'.$msg.'</p>';
$headers = 'From: first last <contact@example.org> '."rn".
'Reply-To: '.$first_name.$last_name.' <'.$email.'> '. "rn".
'Content-type: text/html'. "rn".
'X-Mailer: PHP/'.phpversion();
$message2 = '<p><b>Here is a copy of your message: </b><br/><br/>'.$first_name.' '.$last_name.'wrote: <br/><br/></p>'.'<p>'.$msg'</p>'
$headers2 = 'From:'.$toEmail."rn".'Reply-To: '.$toEmail."rn".
'Content-type: text/html'. "rn".
'X-Mailer: PHP/'.phpversion();
mail($toEmail,'New Inquery from Website',$message,$headers);
mail($email,'Copy of your form submission',$message2,$headers2);
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>