0

ajaxを使用してサーバーにデータを送信すると、メールが送信されたかどうかに応じて、成功とエラーの2つの変数を受け取ります。ajaxでそれらを聞くにはどうすればよいですか?また、それらに警告するにはどうすればよいですか?phpコードは正しいですか?

phpコード:

if ($send){
    echo json_encode($success);
} else { echo json_encode($error);
    } 
4

2 に答える 2

1

あなたはそのような方法でこれを行うことができます

$result["error"] = false;
if($send) {
    $result["data"] = $success
    echo json_encode($result);
} else {
    $result["error"] = true;
    echo json_encode($result);
}
于 2012-07-06T15:52:21.833 に答える
1

$send変数は関数からの戻り値であると想定します。mail()これは次のようなものです。

$headers = 'From: from@from.com';
$send = mail('test@test.com', 'Subject', 'Message', $headers);

echo json_encode(array( 'success' => ($send ? 1 : 0)));

次のように、jQueryを使用してAJAX経由でこれを呼び出すことができます。

$.ajax({
    url: '/path/to/script.php',
    success: function( json ) {
        var obj = JSON.parse( json );
        if(obj['success'] == 1) {
            alert('Success!');
        } else {
            alert('Fail!');
        }
    }
});
于 2012-07-06T15:55:54.997 に答える