0

我在本地运行 MAMP 并尝试使用 jQuery$.post()将一些数据发送到 PHP 脚本,但是当函数触发时,我收到 500 错误:POST http://localhost:8888/app_name/php/add_new_class.php 500 (Internal Server Error)

我对 PHP 相当陌生,但对基本的 ajax 比较熟悉。我在代码中做错了吗?它是服务器配置/权限的事情吗?我可以提供更多信息来提供帮助吗?提前致谢。

相关HTML:

<ul>
    <li><a href="#" id="addclass" >Add Class</a></li>
    <li><a href="#rubric">Rubric</a></li>
</ul>

相关的 JavaScript:

$(document).ready(function() {
    $(document).on('click', '#addclass', addNewClass);
});

function addNewClass() {
    var newClass = prompt('Enter new class name:').trim()
    if ( (newClass != null) && (newClass != '') ) {
        $.post('php/add_new_class.php', {post_class_name:newClass}, function(data) {
            alert(data);
        });
    } else {
        alert('You didn\'t enter any text. Please enter a valid class name.');
    }
}

相关PHP:

<?php

require_once 'db_connect.php';

$class_name = $_POST['post_class_name'];

$query = sprintf("INSERT INTO classes (class_name) VALUES ('%s');",
    mysql_real_escape_string($class_name));

mysql_query($query)
    or die(echo mysql_error());

echo 'success';

?>

编辑:

这是我的一个简单的 PHP 错误。作为 PHP 新手,我不知道 500 内部服务器错误可能表明这一点,也没有在错误日志中找到有用的描述。错误在

mysql_query($query)
    or die(echo mysql_error());

echo在声明中是不必要的die,并导致它失败。

4

0 回答 0