0

AJAX 投稿を使用して PHP から複数の変数を取得する最良の方法を見つけようとしています。現在、.substr を使用して、エコーされた変数を PHP 自体から分割しています。

これが私のAJAX投稿です(jQueryを使用)

$.post("scripts/enter/register.php", {username : username, email : email, password : password}, function(data) {
    var callback = data.substr(0,1);
    var user_session = data.substr(1);
    if(callback === "1"){
        //Do a registration script
    } else {
        //Give an error
    }
});

そして私のPHP

if (strlen($hash) >= 20) {
    if($user_name){
        //Perform SQL queries
        echo "1";
        echo $cookie;
    } else {
        echo "0";
    }
} else {
    echo "0";
}

ご覧のとおり、私の php では、すべてがうまくいくと 2 つの変数をエコーし​​ます。エラーが発生した場合、1 つの変数のみをエコーし​​ます。このスクリプトは問題なく動作しますが、扱いにくく、明らかに安全ではありません。余談ですが、エコーが安全ではないことを理解するようになりましたが、代わりに何をすべきかは誰も教えてくれませんでした。

ログインを処理する別のスクリプト (この最後のスクリプトは登録) がありますが、別の PHP スクリプトを使用しています。質問は次のとおりです。

  1. 登録とログイン (およびその他の PHP スクリプト) を 1 つのスクリプトに結合できますか?
  2. jQueryで使用できるように、PHP変数をjavascript変数に変換するより良い方法はありますか?
4

1 に答える 1

0

コードに if(callback === "1"){ があります。

これは if(callback == "1"){ である必要があり、これは文字列だけでなく数値でもあると仮定します

それはあなたの問題の一部を解決するかもしれません

于 2013-04-25T15:45:33.607 に答える