为什么变量不被传递?
问题描述:
我正在使用select2插件从mysql填充标签。 所以我传递将q变量的getdada.php.but问题是为什么变量不被传递?
-
q变量没有被传递访问getdata.php。我想通过这个变量,这样我可以得到有关它的数据(可能是我没有把q变量放在合适的地方)
2.if我不使用q变量,那么只有最后或第一个变量retrived.I想填充所有的结果作为标签数据(也许错误是在我的jsoncode在getdata.php甲酸盐)
Plz的帮助。
$("#e8").select2({
placeholder: "Search for another Concept",
minimumInputLength: 1,
multiple: true,
ajax: { // instead of writing the function to execute the request we use Select2's convenient helper
url: "getdata.php",
dataType: 'json',
data: function (term, page) {
return {
q: term, // search term
page: page
};
},
results: function (data, page) {
return { results: data};
}
}
});
这里访问getdata.php
$sql=mysqli_query($db3,"SELECT * FROM o4_tags");
while($row=mysqli_fetch_array($sql)){
$tags=$row['tag_name'];
$id=$row['id'];
$myArray = array(
array("id" => "$id", "text" => "$tags"),
);
}
echo json_encode($myArray);
答
一开始,似乎有一些与你的PHP脚本去错了。您正在为检索的每一行创建一个新的$ myArray。只有这些数组中的最后一个实际上以JSON形式输出。此代码解决了问题:
$sql=mysqli_query($db3,"SELECT * FROM o4_tags");
$myArray=array();
while($row=mysqli_fetch_array($sql)){
$tags=$row['tag_name'];
$id=$row['id'];
$myArray[]=array("id" => "$id", "text" => "$tags");
}
echo json_encode($myArray);
我不知道为什么你没有看到在你的PHP脚本的检索词,不过话又说回来,我没有看到任何PHP代码实际上与交易搜索词。您是否尝试过倾销$ _REQUEST?
+0
非常感谢。我实际上通过使用$ q = $ _GET [“q “]; – 2013-03-26 23:36:32
以防万一有人需要这个:这里是Select2他在谈论http://ivaynberg.github.com/select2/ – Hazzit 2013-03-26 23:23:11