-1

MVC モデルを使用して、JQuery、AJAX/JSON、および PHP を使用して、HTML コードからデータベースにデータを追加しようとしています。以下は、私が達成しようとしていることの小さなサンプルです。

私のフロントエンドには、さまざまなオプションを持つチェックボックスと「追加」という名前のボタンがあります。ここから選択した要素は、適切にテストした Javascript 関数によって取得されます。これが完了したら、別の Javascript 関数を呼び出して AJAX/JSON を実行します。私がまだ新鮮なのは、データを PHP に送信する実際の AJAX/JSON プロセスです。

私のJavascript関数:

function add_fruits(fruit_name, fruit_type){
    var success = "Fruit added";
    var error = "Fruit not added";

    var params = {
        'fruit_name' : fruit_name,
        'fruit_type' : fruit_type
    };

    $.ajax({
        type: "POST",
        url: "add_fruits.php",
        async: false,
        data: params,
              success: function(success){
                  alert(success);
              },
              error: function(error){
                  alert(error);
              }
    });
}

私のPHP関数:

<?php
header("Access-Control-Allow-Origin: *");
header('Content-type: application/json');

require_once 'lib/connection_files.php';


if($_SERVER['REQUEST_METHOD'] =='POST')
{
    $fruit_name = no_sql_injection($_POST['fruit_name']);
    $fruit_type = no_sql_injection($_POST['fruit_type']);

    $fruits = new fruits();
    $result = $fruits->add_fruits($fruit_name, $fruit_type);
    $tmp = mysql_num_rows($result);

    if($result == 1)
    {//RESULT must return 1 to verify successful insertion to database
        //send confirmation to front end
    }
    else
    {
        //send error message to front end
    }
}
else{
    //tell front end there was error sending data via AJAX
}
?>

add_fruits() 関数がデータベースへのクエリを処理することに注意してください。私の問題とは無関係であるため、ここには含めませんでした。

4

1 に答える 1

2

echoPHPで行うだけです:

PHP

else {
    //send error message to front end
    echo "Error Adding Fruits";
}

JS

success: function(data) {
    if (data == "1") {
        //data added to db
    }
    else {
        alert(data);
    }
}
于 2012-07-05T23:44:24.863 に答える