Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何从mysql中检索数据作为数组并显示在另一个页面中进行操作?_Php_Mysql_Arrays - Fatal编程技术网

Php 如何从mysql中检索数据作为数组并显示在另一个页面中进行操作?

Php 如何从mysql中检索数据作为数组并显示在另一个页面中进行操作?,php,mysql,arrays,Php,Mysql,Arrays,我的目标是使用getideas.php从数据库中获取相关行,然后在displayideas.php上,我可以实际地将它们区分开来(例如,获得得分最高的想法,显示想法得分,在一段时间内在代码的特定html部分中显示想法) 在getideas.php上,我有以下内容: $sql = "SELECT evals.idea_score, evals.ideas_idea_id, ideas.idea FROM evals, ideas WHERE evals.ideas_idea_id

我的目标是使用getideas.php从数据库中获取相关行,然后在displayideas.php上,我可以实际地将它们区分开来(例如,获得得分最高的想法,显示想法得分,在一段时间内在代码的特定html部分中显示想法)

在getideas.php上,我有以下内容:

$sql = "SELECT evals.idea_score, evals.ideas_idea_id, ideas.idea
    FROM evals, ideas
    WHERE evals.ideas_idea_id = ideas.idea_id
        AND evals.users_eval_id = '$eval_id'";

    $result = mysql_query($sql);

    $data = array();

    while($row = mysql_fetch_assoc($result)){
        $data[] = $row["idea_score"];
        array_push($data, $row["ideas_idea_id"], $row["idea"]);
    }

    return $data;
$.ajax({type: "POST",
    url: "getideas.php",
    data: { eval_id: eval_id },
    success: function(response){
        console.log(response);
    }
})
在displayideas.php上,我有以下内容:

$sql = "SELECT evals.idea_score, evals.ideas_idea_id, ideas.idea
    FROM evals, ideas
    WHERE evals.ideas_idea_id = ideas.idea_id
        AND evals.users_eval_id = '$eval_id'";

    $result = mysql_query($sql);

    $data = array();

    while($row = mysql_fetch_assoc($result)){
        $data[] = $row["idea_score"];
        array_push($data, $row["ideas_idea_id"], $row["idea"]);
    }

    return $data;
$.ajax({type: "POST",
    url: "getideas.php",
    data: { eval_id: eval_id },
    success: function(response){
        console.log(response);
    }
})

我不确定是否需要数组。我是PHP/MySQL新手。我一直在网上寻找这个问题的答案,但找不到一个地方可以把所有的问题以我能理解的方式放在一起解决我的问题。在这一点上,我觉得我花了太多的时间在这上面,是时候寻求帮助了

在将数组使用到javascript之前,需要对其进行json编码

所以使用

return json_encode($data);
参考: 我希望这会对你有所帮助。 getideas.php将如下所示

      $sql = "SELECT evals.idea_score, evals.ideas_idea_id, ideas.idea
FROM evals, ideas
WHERE evals.ideas_idea_id = ideas.idea_id
    AND evals.users_eval_id = '". mysql_real_escape_string($_POST['eval_id'])."'";

$result = mysql_query($sql);

$data = array();

while($row = mysql_fetch_assoc($result)){
    $data[] = $row["idea_score"];
    array_push($data, $row["ideas_idea_id"], $row["idea"]);
}

$post = json_encode($data);
    echo $post;
在displayideas.php上

       $.ajax({type: "POST",
url: "getideas.php",
dataType: "json",
data: { eval_id: eval_id },
success: function(response){
    console.log(response);//you can access data from here by response[0].attributename.ie,response[1].idea_score.
}});

问题的可能重复实际上是关于如何检索(然后操纵)数据(而不是发送)。所以console.log(响应)实际上给了我数据:[“3”、“324529”、“想法1”、“7”、“589400”、“想法2”、“5”、“862765”、“想法3”]然而,当我尝试console.log(响应[1])。例如,想法分数,我得到了“未定义”…试过了。但我仍然无法检索数据片段。。。(即console.log(响应[1].idea)返回“未定义”。