while循环中While循环与内连接

时间:2015-04-08 22:54:47

标签: php loops join while-loop

对于一个小项目我正在制作书签系统。

在首页,我想显示所有可用的类别,并在每个类别下显示该类别中的链接。

目前我还是坚持这个:

$querylinks = "SELECT * FROM links INNER JOIN categorien ON links.categorie_id=categorie.categorie_id; "; 
$results = mysql_query($querylinks);

while ($row = mysql_fetch_array('$results')) {
    echo $row['categorie.categorie_id'];
    while ($row = mysql_fetch_array($results)) {/*the links within the category*/
        echo "<a href=" . "http://" . $row['link.link_url'] . ">"
             . $row['link.link_naam'] . "</a><br />";
    }
}

表&#34;链接&#34;和&#34;类别&#34;加入,希望它能获得给定类别中的链接。

我希望我在这里做的事情太愚蠢了,还是从php开始。 你知道为什么这不起作用吗?我在整个stackoverflow中搜索但是找不到类似的东西。

1 个答案:

答案 0 :(得分:0)

这里似乎有一些问题。在您的查询语句中,您在INNER JOIN之后有“categorien”。此外,您的表格类别或类别是您在问题中列出的吗?

你也不需要两个while语句来做到这一点。加上你的初始while语句是不正确的。 $ results周围不应该有引号。

每当我在php中进行查询时,我总是确保在mysql查询中获得所需的结果,然后将格式正确的查询复制到我的php代码中。

我建议您在此处执行此操作以验证给出的结果是否符合您的预期。

然后回去修复你的PHP。你只需要一个while循环,它应该看起来像:

while( $row = mysql_fetch_array ( $results) )