3

問題

ローカルホスト(WAMP)で開発しているサイトのすべてのAJAX呼び出しで同じエラー(500内部サーバーエラー)を受け取ります。私はそれが私のサーバーのセットアップ方法かもしれないと考え始めています。たぶん私はPHP拡張機能か何かが欠けていますか?どんな助けでも大歓迎です。

テスト

ブラウザでajaxアクションに移動したので、コードが正常に機能することはわかっています。また、コードは実際にデータをデータベースに保存するので、正しいスクリプトを見つけて正常に実行していることがわかります。

コード

テストを簡単にするためにコードを簡略化しました。

JS

    $.ajax({type: 'GET',
        url: '/cms/performances/deleteperformance',
        data: 'id=' + id,
        dataType: 'json',
        success: function(result)
        {
            switch(result)
            {
                case 1:
                    //Refresh the page
                    location.reload();
                    break;
                case 0:
                    alert('error');
                    break;
                case 2:
                    alert('Incorrect call');
                    break;
                default:
                    alert('default');
                    break;
            }
        },
        error: function(xhr, ajaxOptions, thrownError)
        {
            var httpCode = xhr.status;
            alert(httpCode + ': ' + thrownError);
        }
    });

PHP

public function deleteperformanceAction()
{
    $this->_helper->layout()->disableLayout();
    $this->_helper->viewRenderer->setNoRender(true);
    echo json_encode(1);
}
4

2 に答える 2

14

PHPの先頭に次のコードを追加します。

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

これにより、PHPコードの問題がわかります。構文エラーの場合(コード500の可能性が非常に高いと思われますphp.ini)、httpd.confまたは.htaccessファイルでこれらのオプションを有効にする必要があります。または、Webサーバーのエラーログで問題を確認してください。

500エラーはJSの問題ではなく、サーバー側です。

于 2012-04-08T19:49:24.917 に答える
4

私はついにこれの底に到達しました。実際、コードには何の問題もありませんでした。ただし、ブートストラップ中に検出されなかったプラグインがありました。次に、これはヘッダーを500に変更するエラーハンドラーを介して実行されていました。見つからないプラグインを削除すると、すべてが正常になりました。

ばかげた間違いだと思います!

于 2012-04-21T17:46:52.903 に答える