首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用JSON发送数组

问使用JSON发送数组
EN

Stack Overflow用户
提问于 2012-08-08 16:27:06
回答 2查看 141关注 0票数 0

我使用以下代码作为option标签的post文本:

代码语言:javascript
复制
$("#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文件中,我使用以下代码从数据库中获取任何记录

代码语言:javascript
复制
<?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条记录。请帮帮我

EN

回答 2

Stack Overflow用户

发布于 2012-08-08 16:29:33

变化

代码语言:javascript
复制
$data ['doroos']= $result['title'];

至

代码语言:javascript
复制
$data ['doroos'][] = $result['title'];

您基本上是在覆盖doroos。相反,使用[]将每个$result['title']添加到doroos。

票数 5
EN

Stack Overflow用户

发布于 2012-08-08 16:34:35

你应该做一些类似下面的事情。否则,"doroos“将只有从获取的结果集中的最后一个标题记录。

代码语言:javascript
复制
<?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);

?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11860564

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档