使用Ajax将数据插入数据库时​​如何修复500 Internal Server Error

时间:2019-07-02 15:49:51

标签: php jquery ajax

我对插入模块有疑问,为什么响应显示内部服务器错误500?前端是否有问题?这意味着网站上出现了问题?但是我尝试了更新内容模块ajax的工作。但是在我的插入模块中,ajax给出了错误。为什么会发生?有人可以帮我解决这个问题吗?谢谢。

Error

前端Ajax:

    $(document).ready(function(){
    $.ajaxSetup({
        headers: {
            'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
        }
    });

    const email = localStorage.getItem('email');
    $('#hidden_auth_user').val(email);
    $('.about_psmid_button').on('click',function(){      

        const about_psmid_page = $('#about_psmid_page').val();
        const about_psmid_title = $('#about_psmid_title').val();
        //const about_psmid_content = $('#about_psmid_content').val();
        const hidden_auth_user = $('#hidden_auth_user').val();
        const ck_editor_content =  CKEDITOR.instances['about_psmid_content'].getData();
        const data = new FormData();
        data.append('about_psmid_page',about_psmid_page);
        data.append('about_psmid_title',about_psmid_title);
        data.append('about_psmid_content',ck_editor_content);
        data.append('hidden_auth_user',hidden_auth_user);

        Swal.fire({
            title: 'Are you sure to add this content?',
            type: 'warning',
            showCancelButton: true,
            confirmButtonColor: '#008B74',
            confirmButtonText: 'Okay'
          }).then((result) => {
            if (result.value) {
                $.ajax({
                    url:'./Function/aboutPMSIDAddFunction.php',
                    data:data,
                    type:'POST',
                    dataType:'JSON',
                    processData: false,
                    contentType: false,
                    success:function(response){
                        Swal.fire(
                        'Success!',
                        'Data information has been saved.',
                        'success'
                        )
                        if(response == 'Successfully Inserted') {
                            location.reload();
                        }
                    },
                    error:function(response) {
                        console.log(response);
                    }
                });

            }
        })



    });
});

后端PHP:

    <?php 
    require_once('../ConnectionString/require_db.php');
    session_start();
    //submit function
    if(isset($_POST['about_psmid_page']))
    {
        $about_psmid_page = $_POST['about_psmid_page'];
        $about_psmid_title = $_POST['about_psmid_title'];
        $about_psmid_content = $_POST['about_psmid_content'];
        $hidden_auth_user = $_POST['hidden_auth_user'];
        $now = (new \DateTime())->format('Y-m-d H:i:s');

        $stmt = $db->prepare('INSERT INTO tblcontent (title, content, posted_by, when_inserted, posttype) VALUES (?,?,?,?,?)');
        $stmt ->bind_param('sssss', $about_psmid_title, $about_psmid_content, $hidden_auth_user, $now, $about_psmid_page);
        $stmt ->execute();

        echo json_encode('Successfully Inserted'); 
    }
?>

1 个答案:

答案 0 :(得分:1)

首先,您需要调试问题。最快捷的方法是启用错误报告。 您可以将这些行添加到php文件的顶部

ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

但是在解析json数据时看起来好像是错误的。 要接收json数据,您应该获取php://input

的内容
$data = json_decode(file_get_contents("php://input"));

if(isset($data['about_psmid_page'])) {
...