我需要在文本框中插入id后填充表中的所有匹配记录。但目前我只收到一条记录。
PHP
<?php
$id=$_POST['userID'];
$db_host = 'jo\SQL2005';
$db_username = 'jo';
$db_password = '123321';
$db_name = 'db_test2';
mssql_connect($db_host, $db_username, $db_password);
mssql_select_db($db_name);
$query=mssql_query("select * from address where user_id='$id'");
$result=mssql_fetch_assoc($query);
$json= array('id'=>$result['id'],'user_id'=>$result['user_id'],
'street'=>$result['street'],
'quarter'=>$result['quarter'],'Phone_number'=>$result['Phone_number']);
echo json_encode($json);
exit;
?>
的javaScript
function getname()
{
var id=$("#userID").val(); // get the id from textbox
$.ajax({
type:"post",
dataType:"json",
data:"userID="+id,
url:"address_json_data.php",
success:function(json)
{
$("table.imagetable").
append("<tr><td>" + json.user_id + "</td><td>" +
json.street + "</td></tr>");
}
});
}
HTML
<input name="userID" id="userID" onChange="getname()" type="text" />
<table border='1'class="imagetable">
<tr><th>id</th><th>email</th></tr>
</table>
任何帮助非常感谢
答案 0 :(得分:0)
替换此代码:
$query=mssql_query("select * from address where user_id='$id'");
$result=mssql_fetch_assoc($query);
$json= array('id'=>$result['id'],'user_id'=>$result['user_id'],
'street'=>$result['street'],
'quarter'=>$result['quarter'],'Phone_number'=>$result['Phone_number']);
用这个:
$query=mssql_query("select * from address where user_id='$id'");
while($result=mssql_fetch_assoc($query))
{
$json[]= array(
'id'=>$result['id'],
'user_id'=>$result['user_id'],
'street'=>$result['street'],
'quarter'=>$result['quarter'],
'Phone_number'=>$result['Phone_number']
);
}
在你的javascript中:
success:function(json)
{
var str = '';
for(var x in json)
{
str += "<tr>";
str += "<td>" + json[x].user_id + "</td>";
str += "<td>" +json[x].street + "</td></tr>";
}
$("table.imagetable").append(str);
}