3

基本的に、私のコードは、特定の文字列がテキストボックスに入力されたかどうかを確認する変数を宣言し、ユーザーがEnterキーを押したときに部分文字列を使用して、入力された特定の単語の後に文字列を含む変数を宣言します(以下を参照)。

この変数を php に渡し、最終的にそれを SQL データベースと比較するか、(しかし、これは安全でない/不可能だと聞いています) JavaScript から直接 SQL データベースと比較したいと思います。

これは可能ですか?

var match = textInput.value.indexOf("string");

if (keycode == 13 && match != -1) { <- checks to see if enter is pressed + "string" has been typed.
    var some_string = text.input.value.substring(7); <- takes everything after the word "string"

ここで変数 'some_string' を SQL データベースに渡し、チェックを実行して true または false を返します。

これが明確であることを願っています。助けてくれてありがとう。

4

2 に答える 2

2

AJAX を使用して、適切なデータベース呼び出しで値を使用する PHP 要求ハンドラーに値を渡します。安全のために、SQL を構築するときにmysql_real_escape_stringでパラメーターをエスケープしてください。次に、結果 (JSON/XML/text/...) を示す応答をハンドラーに返させます。

于 2012-04-08T04:53:27.643 に答える
1

ajaxリクエストを使用する必要があります。非同期で行う必要があります。そうしないと、ブラウザがハングします。

ただし、非同期リクエストはコールバックで機能し、おそらく約束以上のものを返しません。だから、代わりに

function synchronous(){
    // init xhr and send
    return xhr.response; // or json-parse of response-text or something
}
try {
    if (synchronous() == "wanted value")
        // do something
    else
        // do something else
} catch(e) {
    // alert a problem
}

あなたが使用する必要があります

function asychronous(success, error) {
    // init xhr, register handlers and send
    // return nothing
}
asynchronous(function scb(data) {
    if (data == "wandted value")
        // do something
    else
        // do something else
}, function ecb(e) {
    // alert a problem
});
于 2012-04-09T19:22:14.620 に答える