为什么这个php脚本导致“NetworkError:500 Internal Server Error”?

Why is this php script causing "NetworkError: 500 Internal Server Error"? Its only a little script for the contact form on my website and every time I click on the button to send the form the error cums up and as you can see its not made by me so I can't find the error by myself.. Thank you in advance!

 <?php
        // My modifications to mailer script from:
        // http://blog.teamtreehouse.com/create-ajax-contact-form
        // Added input sanitizing to prevent injection

        // Only process POST reqeusts.
        if ($_SERVER["REQUEST_METHOD"] == 'POST') {
            // Get the form fields and remove whitespace.
            $name = strip_tags(trim($_POST["name"]));
                    $name = str_replace(array("","
"),array(" "," "),$name);
            $email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
            $message = trim($_POST["message"]);

            // Check that data was sent to the mailer.
            if ( empty($name) OR empty($message) OR !filter_var($email, FILTER_VALIDATE_EMAIL)) {
                // Set a 400 (bad request) response code and exit.
                http_response_code(400);
                echo "Oops! Etwas ist schief gelaufen, ihre Nachricht konnte leider nicht versendet werden.";
                exit;
            }

            // Set the recipient email address.
            // FIXME: Update this to your desired email address.
            $recipient = "hello@youremail.com";

            // Set the email subject.
            $subject = "Eine neue Nachricht von $name";

            // Build the email content.
            $email_content = "Name: $name
";
            $email_content .= "Email: $email

";
            $email_content .= "Message:
$message
";

            // Build the email headers.
            $email_headers = "From: $name <$email>";

            // Send the email.
            if (mail($recipient, $subject, $email_content, $email_headers)) {
                // Set a 200 (okay) response code.
                http_response_code(200);
                echo "Dankeschön! Ihre Nachricht wurde versendet.";
            } else {
                // Set a 500 (internal server error) response code.
                http_response_code(500);
                echo "Oops! Etwas ist schief gelaufen, ihre Nachricht konnte leider nicht versendet werden.";
            }

        } else {
            // Not a POST request, set a 403 (forbidden) response code.
            http_response_code(403);
            echo "Es gab ein Problem mit ihrer Eingabe, bitte versuchen sie es erneut.";
        }

    ?>
dshtze500055
dshtze500055 如果您有权访问这些日志,请检查您的(错误)日志。这将告诉你究竟是什么原因。
5 年多之前 回复
dongzai3917
dongzai3917 是的我收到了一封电子邮件,但我总是成为失败的消息,而不是成功的消息..她可以自己尝试一下devbug.kaireder-design.com/#contact
5 年多之前 回复
doufu9947
doufu9947 你收到一封电子邮件吗?因为看起来好像没有发送电子邮件,因此显示错误代码500.(您在代码中这样做)
5 年多之前 回复

1个回答



函数http_response_code()需要PHP 5.4.0(参见: php.net )。

你正在使用PHP / 5.3.29。</ p>
</ div >

展开原文

原文

The function http_response_code() needs PHP 5.4.0 (see: php.net).
Your are using PHP/5.3.29.

doumen1883
doumen1883 哦,好吧我不知道我的提供商使用哪个版本但是现在谢谢我知道这不是代码中的错误。
5 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐