Итак, я пытаюсь узнать, как создать контактную форму PHP на XAMPP, просто такую, которая отправляет имя, электронную почту и сообщение по электронной почте.PHP form form parsing error
Так что с какой-то код, который я нашел в пару учебников и смешал его с какой-то нуб «Я думаю, что это идет здесь» магия и сделал это:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<?php
//This is where the variables are given empty values
$nameErr = $emailErr = $textErr = "";
$name = $email = $message = "";
//The variable for the JavaScript
$js = <<<JS
<script>
document.getElementById("contactform").style.display = "none";
</script>
JS;
if ($_SERVER["REQUEST_METHOD"] == "POST") {
if (empty($_POST["name"])) {
$nameErr = "Name is required";
} else {
$name= test_input($_POST["name"]);
} //this checks if the name contains only letters and whitespaces:
if (!preg_match("/^[a-zA-Z ]*$/",$name)) {
$nameErr = "Only letters and white space allowed";
}
if (empty($_POST["email"])) {
$emailErr = "Email is required";
} else {
$email = test_input($_POST["email"]);
} // this is where the e-mail address's form is checked
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
$emailErr = "Invalid email format";
}
if (empty($_POST["message"])) {
$textErr = "Aren't you going to say something?"
} else {
$message = test_input($_POST["message"]);
}
}
function test_input($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlentities($data);
return $data;
}
if ($SERVER["REQUEST_METHOD"] == "POST") {
if (empty($nameErr && $emailErr && $textErr)) {
$to = "[email protected]";
$subject = "Form Submission from "$name".";
$messageall = "$message \n From: $name \n Reply to: $email";
mail($to,$subject,$message,$from);
echo $js;
echo "Thanks, we will contact you back shortly!"
}
}
?>
<form id="contactform" method="POST" action="">
Name:<br><input type="text" name="yourname">
<?php echo $nameErr;><br>
E-mail:<br><input type="text" name="youremail">
<?php echo $emailErr;><br>
Message:<br><textarea name="message" rows="6" cols="25"></textarea>
<?php echo $textErr;>
<br><br>
<input type="submit" value="Submit"><input type="reset" value="clear"><br>
<?php echo $formErr;>
</form>
</body>
</html>
Так что, когда я запустил страницу, я получил это:
Parse error: syntax error, unexpected '}' in C:\xampp\htdocs\form\index.php on line 43
Я проверил свои скобки, и я не уверен, где я ошибся. Я переместил их и получил другие ошибки синтаксического анализа.
Если кто-то поможет мне в этом вопросе и что-нибудь еще, я, возможно, прищурился, но не знал, что я еще ... Я был бы очень благодарен. Всем спасибо!
У вас не хватает длинных запятой в строка 42 '$ textErr =« Разве вы не собираетесь что-то сказать? »;' – Yasel