Jquery使用PHP和MySQL基于一个字段自动完成两个字段
我在MySQL数据库中有一个表,包含以下列:姓名、地址、职业、电话号码和序列号。在我的html表单中,除其他字段外,我还有用于输入姓名、电话号码和序列号的文本字段。如何使用jQuery autocomplete和PHP/MySQL使用序列号字段填充姓名和电话号码字段?我已经成功地在一个输入字段上设置了autopopulate,但是我不知道如何设置它来使用一个具有autocomplete的字段填充其他两个字段。谢谢 这些是田地Jquery使用PHP和MySQL基于一个字段自动完成两个字段,php,javascript,mysql,autocomplete,jquery-autocomplete,Php,Javascript,Mysql,Autocomplete,Jquery Autocomplete,我在MySQL数据库中有一个表,包含以下列:姓名、地址、职业、电话号码和序列号。在我的html表单中,除其他字段外,我还有用于输入姓名、电话号码和序列号的文本字段。如何使用jQuery autocomplete和PHP/MySQL使用序列号字段填充姓名和电话号码字段?我已经成功地在一个输入字段上设置了autopopulate,但是我不知道如何设置它来使用一个具有autocomplete的字段填充其他两个字段。谢谢 这些是田地 <input type="text" name="name
<input type="text" name="name" id="autocomplete" />
<input type="text" name="phone_number" id="autocomplete" />
<input type="text" name="serial_number" id="autocomplete" />
这是我的php脚本,用于从db获取字符串
<?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);
?>
您需要做的是,当序列号的自动完成后,运行ajax调用,根据序列号检索姓名和电话号码,然后填充这些字段,如下所示:
$('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);
});
}
});
显然,您需要根据您的设置更改一些函数和变量名称。添加一些代码以显示您所做的操作。因此,我必须制作另一个脚本来分别获取名称和电话号码?是的,它需要在某个地方处理。不管它是在另一个文件中还是在同一个文件中都不重要。试过了,不起作用。。。autocomplete工作正常,它返回表中选定的值,但不填充所需的字段。