首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择查询返回一条匹配的记录

选择查询返回一条匹配的记录
EN

Stack Overflow用户
提问于 2013-10-08 18:18:31
回答 3查看 96关注 0票数 0

大家好,这是我在这里的第一个问题,请指导我,我正在接收一个变量中的id,它可能是2,3,4代表这些id,当我直接在数据库中运行查询时,我正在从数据库中获取数据,当我在文件中使用时,它工作得很好,它只返回第一个匹配的记录,其余的都返回

$resid在此varaibale中,我接收变量

代码语言:javascript
复制
$query_responsibilities_RS = "SELECT * FROM responsibility  WHERE resID IN ($resIDs)";

这是我正在尝试的查询

代码语言:javascript
复制
$respons_RS = mysql_query($query_respons_RS, $timespace) or die(mysql_error());                                                     
$row_respons_RS = mysql_fetch_assoc($respons_RS);
$total_respons_RS = mysql_num_rows($respons_RS);

$rescID = $row_respons_RS["rescID"]; here i need records but it returns one record i want to use this $rescID in second query 

$query_rescategories_RS = "SELECT *  FROM responsibility_category WHERE rescID IN ($rescID)";
$rescategories_RS = mysql_query($query_rescategories_RS, $timespace) or die(mysql_error());
$row_rescategories_RS = mysql_fetch_assoc($rescategories_RS);
$total_rescategories_RS = mysql_num_rows($rescategories_RS);

<?php do{ 
          echo ("<h4>".addcslashes($row_rescategories_RS["rescName"],"\"")."</h4>");
        } while ($row_rescategories_RS = mysql_fetch_assoc($rescategories_RS)); ?>

我使用循环,但我只得到一条记录,但我有多条记录

EN

回答 3

Stack Overflow用户

发布于 2013-10-08 18:24:31

您应该对它进行循环,尝试以下代码

代码语言:javascript
复制
while($row_respons_RS = mysql_fetch_assoc($respons_RS)) {
 echo $row_respons_RS['rescID'];  //here you will get records 
}
票数 1
EN

Stack Overflow用户

发布于 2013-10-08 18:25:11

要使用的类型:

代码语言:javascript
复制
do{
$rescID[] = $row_respons_RS["rescID"];
}while ($row_respons_RS = mysql_fetch_assoc($respons_RS));

然后:

代码语言:javascript
复制
$query_rescategories_RS = "SELECT *  FROM responsibility_category WHERE rescID IN (" . implode(",",$rescID) . ")";
票数 0
EN

Stack Overflow用户

发布于 2013-10-08 18:56:25

删除此行$row_rescategories_RS = mysql_fetch_assoc($rescategories_RS);

从…

代码语言:javascript
复制
$query_rescategories_RS = "SELECT *  FROM responsibility_category WHERE rescID IN ($rescID)";
$rescategories_RS = mysql_query($query_rescategories_RS, $timespace) or die(mysql_error());
$row_rescategories_RS = mysql_fetch_assoc($rescategories_RS);
$total_rescategories_RS = mysql_num_rows($rescategories_RS);

它只能在while循环中使用。

这里

代码语言:javascript
复制
<?php do{ 
          echo ("<h4>".addcslashes($row_rescategories_RS["rescName"],"\"")."</h4>");
        } while ($row_rescategories_RS = mysql_fetch_assoc($rescategories_RS)); ?>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19244983

复制
相关文章

相似问题

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