1

jQueryUI オートコンプリート関数を使用して、データベースからデータを読み取ります。オートコンプリートは PHP スクリプトを呼び出します。これは次に探します。

$text = mysqli_real_escape_string($_GET['term']);
$query = "SELECT * FROM student WHERE name LIKE '%$text%'";
$result = mysqli_query($con,$query);
$exe = '[';
$first = true;
while($row = mysqli_fetch_assoc($result))
{
    if(!$first)
            {
                $exe .=  ','; 
            }
            else
            {
                $first = false;
            }
            $exe .= '{"value":"'.$row['fname'].', '.$row['lname'].'. "}';
            }
            $exe .= ']';
            echo $exe; 
}

私が理解できるように、PHPコードは一致するデータをexeと呼ばれるオブジェクトのJSON配列に保存しますが、私が理解できないのは次のとおりです。

$text = mysqli_real_escape_string($_GET['term']);

これは何ですか?私の入力フィールドは 'name' と呼ばれ、メソッド $_GET は使用しませんが、$_POST を使用します。「用語」は、オートコンプリート機能がデフォルトで追加するものですか? 前もって感謝します。

4

2 に答える 2

2

はい、用語はオートコンプリート プラグインによって自動的に渡されます。

于 2013-06-18T21:56:32.963 に答える
0

PHP

$_GET['期間']

get 文字列から term= の値を取得します。これはユーザー/ユーザーのブラウザによって提供されるため、信頼できない値です。いくつかの一般的な sql インジェクション攻撃からユーザーを保護するために、mysqli_real_escape_string 関数によってフィルター処理され、sql アクティブな文字がエスケープされます。

于 2013-06-18T21:59:41.010 に答える