我有一个从表(数据库)中选择数据以显示在列表视图(表)中的查询,而我想通过不带按钮提交的选择框在列表视图中搜索数据。
这是我在选择框中的代码
<select onchange="selectrun(this);">
<option value="">Select</option>
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
这是我的代币
function selectrun(sel){
var id= sel.value;
$.ajax({
type:"POST",
url:"./tab.php",
data:{id:id,task:'search'},
success: function(response){
//(I don't know what i should write for pass to php code)
//what I return in response is a query because I want it's execute at my main page,that why I want pass it to $querr_select in php code but I don know my solution is good or not because I never do with ajax
}
});
}
这是我在主页中的代码
$query_select = "SELECT * FROM `table`";
$result=pg_query($query_select ) or die(pg_last_error());
while($row_info=pg_fetch_array($result)){
//code for display view
}
*注意:在tab.php中,我只需将id
从主页传递到tab.php
页,就可以在其中的条件下编写查询进行选择;当我提醒response
时,我得到了SELECT * FROM table WHERE ID ='1'
,我想把它传递给$query_select
,这是我的想法,但还不起作用:(
我想您要问的是如何显示Ajax查询的结果。这是正确的吗?
<select onchange="selectrun(this);">
<option value="">Select</option>
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
<!-- A new HTML div for displaying Ajax call response: -->
<div id="response-area"></div>
<script>
function selectrun(sel){
var id= sel.value;
$.ajax({
type:"POST",
url:"./tab.php",
data:{id:id,task:'search'},
success: function(response){
//Jquery sends response to browser div by setting html.
$('#response-area').html(response);
}
});
}
</script>
tab.php:关于如何通过Ajax返回HTML的基本概念。就混合HTML和PHP而言,这不是一个很好的编程,但它可能会满足您的需求。
假设数据库表包含名为"field1"answers"field2"的字段,则可以使用字段名作为数组键来遍历数组。请注意,pg_fetch_array有额外的参数来选择关联数组,而不是数字索引数组。
<?php
$query_select = "SELECT * FROM `table`";
$result=pg_query($query_select ) or die(pg_last_error());
echo "<table>";
while($row_info=pg_fetch_array($result, NULL, PGSQL_ASSOC)){
echo "<tr>
<td>
$row_info[field1]
</td>
<td>
$row_info[field2]
</td>
</tr>";
}
echo "</table>";
?>
当您更改所选选项时,上面修改过的代码应该会显示从tab.php返回的响应。