首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >请求javascript数组,在查询中使用它筛选结果,并返回新的javascript数组

请求javascript数组,在查询中使用它筛选结果,并返回新的javascript数组
EN

Stack Overflow用户
提问于 2013-07-01 17:17:49
回答 1查看 93关注 0票数 0

我有一个名为'objectID‘的javascript数组。里面有几个不同的身份证。

代码语言:javascript
运行
复制
Example: objectID = ['465723', '654221, '632876', '102435', '320111', ...]
 (includes just 3-6 character numbers, not sure if entered as string or int)

我需要使用'objectID‘查询数据库。

JS

代码语言:javascript
运行
复制
 jQuery.ajax({        
      type: "POST",
      url: "filter.php",
      data: { objectsArray : objectID },
      success: function(result) {
        console.log("Object Names:" + result);     
      }
 }); 

filter.php

代码语言:javascript
运行
复制
...

 $myArray = $_REQUEST['objectsArray'];

 $qstring = "SELECT Name FROM objectlist WHERE ObjectID IN ($myArray)";

 $result = mysql_query($qstring);
 $results = array();

 while ($row = mysql_fetch_assoc($result,MYSQL_ASSOC))
 {
    $results[] = $row;
 }

...

我需要过滤器脚本来返回一个包含对象名称的javascript数组:

代码语言:javascript
运行
复制
Example: objectNames = ['Chair', 'Console', 'Lamp', 'Ball', 'TV', ...]

当请求数组时,我得到了以下错误:

代码语言:javascript
运行
复制
 "mysql_fetch_assoc() expects parameter 1 to be resource, boolean given in"

似乎查询本身有问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-07-01 17:22:29

将$results数组编码为json,并打印它:

代码语言:javascript
运行
复制
$myArray = $_REQUEST['objectsArray'];

//you must escape the array elements to prevent SQL injection
$n = count($myArray);
for ($i = 0; $i < $n; ++$i)
{
    $myArray[$i] = mysql_real_escape_string($myArray[$i]);
}
//join them with comma separator
$myArray = implode(',', $myArray);

$qstring = "SELECT Name FROM objectlist WHERE ObjectID IN ($myArray)";

while ($row = mysql_fetch_assoc($result,MYSQL_ASSOC))
{
    $results[] = $row["Name"];
}

$result = json_encode($results);
print $result;

在javascript中,您将得到名称数组。备注:

  1. 您的代码容易受到SQL注入的影响。在SQL中使用$myArray元素之前引用它们。
  2. 不推荐使用mysql_*函数。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17410075

复制
相关文章

相似问题

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