gpt4 book ai didi

javascript - jQuery 自动完成 PHP Mysql 发布不同字段

转载 作者:行者123 更新时间:2023-11-29 21:59:20 25 4
gpt4 key购买 nike

我正在使用 jQuery 的自动完成功能,其中我使用名为 site.php 的 php 文件填充自动完成下拉列表。 Site.php 从名为 site 的 mysql 表中获取值,该表有 3 列:idcodesite。我希望我的自动完成功能仅显示 codesite,然后将相应的 id 存储在我的另一个表中。

一切正常,除了自动完成功能发布的是所选的codesite,但不是id。为了将 id 发送到我的 php POST,而不是 codesite,我需要更改什么?脚本如下:

PHP 文件:site.php

<?php
$server = 'sql203.com';
$user = 'xxxxxxxxxxxx';
$password = 'xxxxxxx';
$database = 'b17';
$mysqli = new MySQLi($server,$user,$password,$database);
/* Connect to database and set charset to UTF-8 */
if($mysqli->connect_error) {
echo 'Database connection failed...' . 'Error: ' . $mysqli->connect_errno . ' ' . $mysqli->connect_error;
exit;
} else {
$mysqli->set_charset('utf8');
}
/* retrieve the search term that autocomplete sends */
$term = trim(strip_tags($_GET['term']));
$a_json = array();
$a_json_row = array();
if ($data = $mysqli->query("SELECT * FROM `b17_16413362_upupa`.`site` WHERE code LIKE '%$term%' OR site LIKE '%$term%' ORDER BY code , site")) {
while($row = mysqli_fetch_array($data)) {
$id = htmlentities(stripslashes($row['id']));
$code = htmlentities(stripslashes($row['code']));
$site = htmlentities(stripslashes($row['site']));

$a_json_row["id"] = $id;
$a_json_row["value"] = $code.' '.$site;
$a_json_row["label"] = $code.' '.$site;
array_push($a_json, $a_json_row);
}
}
// jQuery wants JSON data

echo json_encode($a_json);
flush();

$mysqli->close();
?>

Javascript:

<script type="text/javascript">
$(function() {

$("#sitex").autocomplete({
source: 'site.php',
minLength: 0
}).focus(function(){

$(this).autocomplete("search");
});
});
</script>

最佳答案

在您的 PHP 中,更改

$a_json_row["value"] = $code.' '.$site;

$a_json_row["value"] = $id;

“value”属性是将由表单提交的数据。 'label' 属性是将向用户显示的内容。

关于javascript - jQuery 自动完成 PHP Mysql 发布不同字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32811963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com