0

MySQL データベースに、名前、住所、職業、電話番号、およびシリアル番号の列を持つテーブルがあります。私のhtmlフォームには、他のフィールドの中でも、名前、電話番号、シリアル番号を入力するためのテキストフィールドがあります。jQuery オートコンプリートと PHP/MySQL を使用して、シリアル番号フィールドを使用して名前フィールドと電話番号フィールドに入力するにはどうすればよいですか? 1 つの入力フィールドに自動入力を設定することはできましたが、オートコンプリートのある 1 つのフィールドを使用して他の 2 つのフィールドに入力するように設定する方法がわかりません。ありがとう

これらはフィールドです

   <input type="text" name="name" id="autocomplete" />
   <input type="text" name="phone_number" id="autocomplete" />
   <input type="text" name="serial_number" id="autocomplete" />

これは、db から文字列を取得するための私の php スクリプトです。

<?php
$dbhost = 'YOUR_SERVER';
$dbuser = 'YOUR_USERNAME';
$dbpass = 'YOUR_PASSWORD';
$dbname = 'YOUR_DATABASE_NAME';

$conn = mysql_connect($dbhost, $dbuser, $dbpass) or die ('Error connecting to mysql');
mysql_select_db($dbname);

$return_arr = array();

if ($conn)
{
    $fetch = mysql_query("SELECT name, phone_number, serial_number FROM users");


    while ($row = mysql_fetch_array($fetch, MYSQL_ASSOC)) {
        $row_array['value'] = $row['name'] . " " . $row['phone_number'] " . $row['serial_number'] ";         
        array_push($return_arr,$row_array);
    }


}
mysql_close($conn);
echo json_encode($return_arr);
?>
4

1 に答える 1

1

シリアル番号のオートコンプリートが終了したら、ajax-callを実行して、シリアル番号に基づいて名前と電話番号を取得し、次のようにこれらのフィールドに入力します。

$('input[name=serial_number]').autocomplete({
    onComplete: function (val) {
        $.getJSON('/url-to-fetch-name-and-phone.php?serial_number=' + val, function (data) {
            $('input[name=name]').val(data.name);
            $('input[name=tel]').val(data.tel);
        });
    }
});

明らかに、設定に応じていくつかの関数と変数の名前を変更する必要があります。

于 2012-07-03T11:28:13.767 に答える