0

我在循环从我的数据库(MySQL)中提取的信息时遇到问题

我想从论坛表中提取所有 ID,如下所示:

SELECT ID FROM Forums

然后遍历所有ID并运行

SELECT ID FROM Catagory WHERE Forum_ID = ?

这在正确的 php 中是相同的:

$profile=$db->prepare('SELECT ID FROM Forums ');
$profile->execute();
$forums = $profile->fetch();

foreach ($forums as &$forum_ID) {

    // some code

    $profile=$db->prepare('SELECT ID FROM Catagories WHERE Forum_ID = ?');
    $profile->bindValue(1, $forum_ID);
    $profile->execute();
    $catagories = $profile->fetch();

    foreach ($categories as &$category_ID ) {

        //some more of my code
    }
}

使用此代码,我得到一个错误:

Undefined variable: categories

请不要介意他们在我的数据库中以这种方式拼写的拼写错误,我不知道

提前致谢

编辑:对于这个测试,我确保 SQL 服务器返回一些东西

4

3 回答 3

1

我们不介意拼写错误。但是 PHP 头脑中,

变成. $catagories_$categories

于 2013-01-25T10:48:23.537 回答
0

做出改变:

$catagories = $profile->fetch();

$categories = $profile->fetch();

有一个拼写错误。

于 2013-01-25T10:49:32.610 回答
0

您的拼写错误在这里给您带来了一些问题。:)

你有:

$catagories = $profile->fetch();

foreach ($categories as &$category_ID ) {

    //some more of my code
}

因此,您将值从fetch()to分配到$catagories但在您使用的下方一行$categories

所以改成:

$categories = $profile->fetch();

foreach ($categories as &$category_ID ) {

    //some more of my code
}
于 2013-01-25T10:50:05.737 回答