我使用以下代码作为option标签的post文本:
$("#major_names").change(function () {
$.post('find_lesson.php', { dars:$("#major_names option:selected").text() },
function(data){
if (data.success)
$("div").append(data.doroos);
else
alert('mm');
},'json');
return false;
});现在在find_lesson文件中,我使用以下代码从数据库中获取任何记录
<?php
$lessonName=$_POST['lesson '];
$query= mysql_query("SELECT * FROM at_*** WHERE title = '{$lessonName}'");
$result= mysql_fetch_array($query);
$sql= mysql_query("SELECT * FROM *** JOIN at_lessons ON . . .");
while($result=mysql_fetch_assoc($sql))
{
$data ['doroos']= $result['title'];
}
$data['success']=true;
echo json_encode($data);
?>mysql命令是正确的,但是在发送数组之后,我得到了1条记录。请帮帮我
发布于 2012-08-08 16:29:33
变化
$data ['doroos']= $result['title'];至
$data ['doroos'][] = $result['title'];您基本上是在覆盖doroos。相反,使用[]将每个$result['title']添加到doroos。
发布于 2012-08-08 16:34:35
你应该做一些类似下面的事情。否则,"doroos“将只有从获取的结果集中的最后一个标题记录。
<?php
$lessonName=$_POST['lesson '];
$query= mysql_query("SELECT * FROM at_*** WHERE title = '{$lessonName}'");
$result= mysql_fetch_array($query);
$sql= mysql_query("SELECT * FROM *** JOIN at_lessons ON . . .");
$doroos = array();
$x = 0;
while($result=mysql_fetch_assoc($sql))
{
$doroos[x++] = $result['title'];
}
$data ['doroos']= $doroos;
$data['success']=true;
echo json_encode($data);
?>https://stackoverflow.com/questions/11860564
复制相似问题