首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这些嵌套循环没有结果

这些嵌套循环没有结果
EN

Stack Overflow用户
提问于 2013-01-03 22:21:00
回答 2查看 58关注 0票数 0

我正在尝试嵌套两个while循环和一个if语句。

代码语言:javascript
复制
$Query = "SELECT * from lijst";  
$Query2 = "SELECT * from users";
$Result = mysql_query( $Query );  
$Result2 = mysql_query( $Query2 ); 

$Return = "<lijst>"; 
while ( $Lijst = mysql_fetch_object( $Result ))  
{ 

    $Return .= "<lijst>"; 
    while ($Users = mysql_fetch_object( $Result2 ))     
    { 
        if($Lijst['userid'] == $Users['userid'])
        {             
                        $Return .= "<username>".$Users->username."</username>"; 
        }

    }   
    $Return .= "<lijstid>".$Lijst->lijstid."</lijstid>"; 
    $Return .= "</lijst>";  
} 
$Return .= "</lijst>"; 

mysql_free_result($Result); 
mysql_free_result($Result2); 
print ($Return)

但是,我没有得到任何结果。我做错了什么?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-01-03 22:27:59

在调用mysql_fetch_object()时,应该以对象而不是数组的形式访问数据

代码语言:javascript
复制
 if($Lijst['userid'] == $Users['userid'])

应该变成:

代码语言:javascript
复制
 if($Lijst->userid == $Users->userid)
票数 0
EN

Stack Overflow用户

发布于 2013-01-03 22:26:29

你有两个打字错误。

代码语言:javascript
复制
while ( $Users = mysql_fetch_object( $Result2 ) ) { if($Lijst['userid'] == $Users['userid') {

应该是:

代码语言:javascript
复制
while ( $Users = mysql_fetch_object( $Result2 ) ) { if($Lijst['userid'] == $Users['userid']) {

代码语言:javascript
复制
print ($return)

错过末尾的分栏

代码语言:javascript
复制
print ($return);

除此之外,你的代码看起来有点凌乱。以下代码不会执行任何操作:

代码语言:javascript
复制
$Return .= "";

下面是相同的代码,但没有乱七八糟的(变量名中有大写字母)。这使得编写代码和帮助您的人变得更容易。

代码语言:javascript
复制
$query   = "SELECT * from lijst";
$query2  = "SELECT * from users";

$result  = mysql_query($query);
$result2 = mysql_query($query2);
$return  = "";

while ($lijst = mysql_fetch_object($result)) {
    while ($users = mysql_fetch_object($result2)) {
        if ($lijst['userid'] == $users['userid']) {
            $return .= $users->username;
        }
    }
    $return .= "<lijstid>".$lijst->lijstid."</lijstid>"; 
}
mysql_free_result($result);
mysql_free_result($result2);
print ($return);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14140719

复制
相关文章

相似问题

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