初始化PHP类时出现500服务器错误

初始化PHP类时出现500服务器错误,php,jquery,sql-server,ajax,Php,Jquery,Sql Server,Ajax,我正在写一个数据库来更好地管理我们的客户。 显示客户端数据的逻辑完美无瑕 处理方法调用的类称为“kunde” 这就是我初始化类并调用方法以获取结果数组的方式: $showAllgemeineKundendaten = new kunde(); $result_array = $showAllgemeineKundendaten -> show_client_kundendaten($_SESSION['id'], 1); 我使用结果数组来显示内容,但这与我的问题有点离题 现在我正在编写在

我正在写一个数据库来更好地管理我们的客户。 显示客户端数据的逻辑完美无瑕

处理方法调用的类称为“kunde”

这就是我初始化类并调用方法以获取结果数组的方式:

$showAllgemeineKundendaten = new kunde();
$result_array = $showAllgemeineKundendaten -> show_client_kundendaten($_SESSION['id'], 1);
我使用结果数组来显示内容,但这与我的问题有点离题

现在我正在编写在另一个php文档中向数据库插入新客户机的逻辑,在php文件中初始化类“kunde”时,我不断收到500服务器错误。

我目前正在使用ajax向本文档发送帖子:

    $gehrKundennummer = 0;
    $kundenklasse = 0;
    $lkw12t = 0;
    $lkw3t = 0;
    $autobus = 0;
    $firmenname1 = 0;
    $firmenname2 = 0;
    $uidnummer = 0;
    $peselregon = 0;
    $firmenart = 0;
    $strasse = 0;
    $ort = 0;
    $plz = 0;
    $land = 0;

    $gehrKundennummer = $_POST[0];
    $kundenklasse = $_POST[1];
    $lkw12t = $_POST[2];
    $lkw3t = $_POST[3];
    $autobus = $_POST[4];
    $firmenname1 = $_POST[5];
    $firmenname2 = $_POST[6];
    $uidnummer = $_POST[7];
    $peselregon = $_POST[8];
    $firmenart = $_POST[9];
    $strasse = $_POST[10];
    $ort = $_POST[11];
    $plz = $_POST[12];
    $land = $_POST[13];
    $data = array($gehrKundennummer, $kundenKlasse, $lkw12t, $lkw3t, $autobus, $firmenname1, $firmenname2, $uidnummer, $peselregon, $firmenart, $strasse, $ort, $plz, $land);
    $insert = new kunde();
    $insert -> insert_client($data, 1);
注意当表单以经典方式发送到该php文件时,也会发生500服务器错误

我的类和插入方法就是这样的:

class kunde {
        public function insert_client($data, $case){
            $serverName = "SERVERNAME\MSSQLSRV";
            $connectionInfo = array('Database'=>'TEST', "UID"=>"TEST", "PWD"=>"TEST");
            $conn = sqlsrv_connect($serverName, $connectionInfo);
            switch ($case) {
                case 1:
                    $gehrKundennummer = $data[0];
                    $kundenklasse = $data[1];
                    $lkw12t = $data[2];
                    $lkw3t = $data[3];
                    $autobus = $data[4];
                    $firmenname1 = $data[5];
                    $firmenname2 = $data[6];
                    $uidnummer = $data[7];
                    $peselregon = $data[8];
                    $firmenart = $data[9];
                    $strasse = $data[10];
                    $ort = $data[11];
                    $plz = $data[12];
                    $land = $data[13];
                    $angelegt_am = date();
                    $tsql = "INSERT INTO Kundendaten$ (gehr_kundennummer, kundenklasse_ID, firmenname1, firmenname2, firmenart, strasse, land, plz, ort, pesel_regon, uid, lkw12t, lkw3t, autobus, angelegt_am)
                            VALUES ('$gehrKundennummer', '$kundenklasse', '$firmenname1', '$firmenname2', '$firmenart', '$strasse', '$land', '$plz', '$ort', '$peselregon', '$lkw12t', '$lkw3t', '$autobus', '$angelegt_am')";
                    break;
                default:
                    # code...
                    break;
            }
            $stmt = sqlsrv_query($conn, $tsql);
            echo "done";
        }
// REST OF THE CLASS
}
当我尝试初始化该类时,控制台中出现以下错误:

POST http://#########/logic/add_client_logic.php 500 (Internal Server Error)jquery-1.11.2.min.js:4 m.ajaxTransport.sendjquery-1.11.2.min.js:4 m.extend.ajaxadd_client.js:21 (anonymous function)jquery-1.11.2.min.js:3 m.event.dispatchjquery-1.11.2.min.js:3 m.event.add.r.handle
我是阿贾克斯的新手,所以也许我在那里做错了什么

这就是我的js文件内容:

$(function (){
    var $allgSubmit = $('#allg_firmendaten_submit');
    $allgSubmit.click(function(){
        alert('clicked');
        event.preventDefault();
        var gehrKundennummer = $('#gehrKundennummer').val();
        var kundenklasse = $("input[type='radio'][name='kundenklasse']:checked").val();
        var lkw12t = $('#lkw12t').val();
        var lkw3t = $('#lkw3t').val();
        var autobus = $('#autobus').val();
        var firmenname1 = $('#firmenname1').val();
        var firmenname2 = $('#firmenname2').val();
        var uidnummer = $('#uidnummer').val();
        var peselregon = $('#peselregon').val();
        var firmenart = $('#firmenart option:selected').val();
        var strasse = $('#strasse').val();
        var ort = $('#ort').val();
        var plz = $('#plz').val();
        var land = $('#land').val();
        var allgArray = [ gehrKundennummer, kundenklasse, lkw12t, lkw3t, autobus, firmenname1, firmenname2, uidnummer, peselregon, firmenart, strasse, ort, plz, land ];
        $.ajax({
            url: "http://########/logic/add_client_logic.php",
            type: "POST",
            data: $allgArray,
            success: function(){
                var $allgSave = $('#allgSave');
                $allgSave.toggle();
            },
            error: function(){
                alert('fail');
            }
        });
    });
});

已解决

问题很简单,我责怪自己打扰了你们

由于我的逻辑文件位于作用域之外,因此在初始化它之前从未包含该类==服务器错误


我只是在执行我的逻辑文件之前包含了这个类,现在它就可以工作了。

500错误将写入错误日志。查看错误日志或
ini\u集(“显示错误”,1)(如果不是在生产中)。另外,Javascript不需要变量声明使用
$
;已经在我的index.php中找到错误日志了吗?如果您使用的是apache2,并且没有在php中设置自定义位置,那么它将位于
/var/log/apache2/error.log
。如果您真的有一个名为
Kundendaten$
的表?我不确定mysql表的确切规则,但您至少需要在字符串中转义它。我正在使用windows server 2012(因此我不知道错误日志在哪里)安装SQL,我正在使用SQLSRV扩展与服务器通信我已将excel工作表导入数据库,这就是它为什么变得重要的原因——它看起来很奇怪,但当我试图从表中读取数据时,它会起作用