プロが教える店舗&オフィスのセキュリティ対策術

PHPでページ遷移のない掲示板を作りたいので
http://gomokuankake.com/2013/11/22/4652/
この辺を参考にしていたんですが、JavaScriptの処理で、

$.ajax({
 type: 'POST',
 url: './send_contact_form.php',
 cache: false,
 data: contact_form_contents,
 success: function(html) {},
 error: function() {
 // エラーが返ってきた場合の処理
 }
});

と書いてますが、
これの、error: function() {}なんですが、何をもってエラーと判断するのでしょうか。
例えば、ユーザーが入力した項目がエラーなので再入力させたい、という場合は、PHP側でどのように出力すればいいのでしょうか。

よろしくお願いします。

A 回答 (2件)

サーバー側から成功以外の HTTP ステータスが返れば、エラーと判断されます。


「ユーザー入力がエラー」ならば、"400 Bad Request" の HTTP ステータスで応答すれば OK でしょう。

HTTP ステータスの設定方法は、フレームワーク製品の説明書をご覧ください。
素の PHP ならば、以下の API です。
http://php.net/manual/ja/function.http-response- …
    • good
    • 0
この回答へのお礼

ありがとうございます。
この場合、PHP側からはエラーコードしか戻せないでしょうか。
例えばnameフィールドに異常がある、という情報をPHPからJSに渡すことはできないでしょうか。

お礼日時:2015/09/29 15:08

400 エラーの詳細を送りたいなら、通常データとして JSON 等を付ければ良いでしょう。



$.ajax の error 関数は引数に jqXHR が渡されるので、
jqXHR.responseText から詳細を読み取れます。
http://api.jquery.com/jquery.ajax/
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございました!
ちょっと不明なところも残っていますが、頂いた情報をもとに試してみます!

お礼日時:2015/09/29 18:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!