gpt4 book ai didi

PHP 联系表单失败

转载 作者:太空宇宙 更新时间:2023-11-04 01:59:09 25 4
gpt4 key购买 nike

我想知道此联系表中出了什么问题。我不知道为什么,但它总是默认为 else 并说 出了点问题,请稍后再试。 我不明白为什么,以及 error_log没有显示任何内容。有什么明显的我想念的吗?我是 PHP 的新手。

PHP

<?php
$name = $_POST['name'];
$email = $_POST['email'];
$phone = $_POST['phone'];
$message = $_POST['message'];
$captcha = $_POST['captcha'];
$from = 'From: HankSmith.com Contact Form';
$to = 'thatbraxjohnsonguy@gmail.com';
$subject = 'HANK SMITH CONTACT FORM';

$body = "
From: $name\n
E-Mail: $email\n
Phone: $phone\n
Message: $message\n";

if ($_POST['submit'] and $captcha == 4) {
if (mail ($to, $subject, $body, $from)) {
echo '<p style="margin-top: 150; text-align:center; font-size: 18px;">Your message has been sent! Click <a href="../index.php">here</a> to return to the website.</p>';
} else {
echo '<p>Something went wrong, try again later!</p>';
}
}
?>

HTML 表单

            <form class="contactform" method="post" action="php/contact.php">
<h3>Name</h3>
<input class="form inputboxes" type="text" name="name">
<h3>Email</h3>
<input class="form inputboxes" type="text" name="email">
<h3>Phone</h3>
<input class="form inputboxes" type="text" name="phone">
<h3>Message</h3>
<textarea class="form inputboxes" name="message"></textarea>
<h3 class="captchastyle">Are you real? What is 2 + 2?</h3><input class="captcha captchastyle" type="text" name="captcha" maxlength="1">
<input class="form submit" name="submit" type="submit" value="Submit">
</form>

最佳答案

当我将它复制到我的文本编辑器中时,它抛出了一个解析错误,因为 if (mail)... 部分中的 echo 语句没有右括号。我从不使用“and”,我通常使用“&&”,但实际上在这种情况下似乎并不重要。

if ($_POST['submit'] && $captcha == 4) {                
if (mail ($to, $subject, $body, $from)) {
echo '<p style="margin-top: 150; text-align:center; font-size: 18px;">Your message has been sent! Click <a href="../index.php">here</a> to return to the website.</p>';
} // THIS MUST BE HERE
} else {
echo '<p>Something went wrong, try again later!</p>';
}

此外,您可能需要 if (mail)... 语句的“其他”条件。如果您看到空白页,那是因为您没有处理 mail() 函数返回 false 时发生的情况:

if (mail ($to, $subject, $body, $from)) { 
echo '<p style="margin-top: 150; text-align:center; font-size: 18px;">Your message has been sent! Click <a href="../index.php">here</a> to return to the website.</p>';
} else {
echo '<p>Problem sending mail!';
}

老实说,原生 PHP mail() 函数很糟糕!考虑使用 SwiftMailerPHPMailer相反。

关于PHP 联系表单失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42102092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com