0

このような投稿を他にもたくさん見てきましたが、間違ったことは何も見当たりません。また、ホスティング(Heroku)に問題がある可能性があることも読んだので、チケットを作成しましたが、3 日経っても回答がありません。

以下は、情報を送信するコードです。

(discuss.php)

    <script type="text/javascript">
        $(function() {
            $('#ideasubmit').click(function() {
                console.log();
                $('#ideacontainer').append('<img src="images/loading.gif" alt="Please Wait" id="idealoading" />');

                var ideatitle = $('#ideatitle').val();
                var ideafbid = $('#ideafbid').val();
                var idea = $('#idea').val();

                $.ajax({
                    url: 'ajaxsqli.php',
                    type: 'POST',
                    data: 'ideatitle=' + ideatitle + '&ideafbid=' + ideafbid + '&idea=' + idea,

                    success: function(result) {
                        $('#idearesponse').remove();
                        $('#ideacontainer').append('<p id="idearesponse">' + result + '</p>');
                        $('#idealoading').fadeOut(500, function() {
                            $(this).remove();
                        });
                    }
                });
                return false;
            });
        });

以下は、情報を送信したときにエラーを取得するコード ファイルです。

(ajaxsqli.php)

    $db = new db;

$query = "INSERT into comments(user_fbid, discuss_type, discuss_post_title, discuss_post, date) VALUES (?, ?, ?, ?, )";

$stmt = $db->stmt_init();
if($stmt->prepare($query)) {
    $stmt->bind_param('iissi', $_POST['ideafbid'], 1, $_POST['ideatitle'], $_POST['idea'], date('Ymd'));
    $stmt->execute();
}

if($stmt) {
echo "Thank you. We'll be in touch with you shortly!";
} else {
echo "There was a problem. Please  try again later.";
}

?>

奇妙なことに、私は 3 日前に動作していましたが、コードの一部を改善しようとしましたが、バックアップを復元しても、動作させることができません。

これは完全なエラー メッセージです。

リソースの読み込みに失敗しました: サーバーはステータス 500 (内部サーバー エラー) で応答し、ajaxsqli.php を指しています

Chrome Inspect Elements を使用すると、POST が情報を投稿していることがわかりますが、応答情報はありません。

このコードに問題はありますか?

4

1 に答える 1

1

エラーは通常、phpの500問題を指します。ajaxsqli.phpパラメーターを使用してブラウザーにロードします (に変更$_POSTする$_REQUESTと、クエリ文字列を使用できます。EG

$db = new db;

$query = "INSERT into comments(user_fbid, discuss_type, discuss_post_title, discuss_post, date) VALUES (?, ?, ?, ?, )";

$stmt = $db->stmt_init();
if($stmt->prepare($query)) {
    $stmt->bind_param('iissi', $_REQUEST['ideafbid'], 1, $_REQUEST['ideatitle'], $_REQUEST['idea'], date('Ymd'));
    $stmt->execute();
}

if($stmt) {
echo "Thank you. We'll be in touch with you shortly!";
} else {
echo "There was a problem. Please  try again later.";
}

?>

次に、http://yourhost/ajaxsqli.php?ideafbid=data&ideatitle=data&idea=dataにアクセスして、PHP エラーの内容を確認します。

于 2012-04-16T08:24:02.133 に答える