Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按类别显示用户的帖子_Php_Mysql_Select_Blogs_Categories - Fatal编程技术网

Php 按类别显示用户的帖子

Php 按类别显示用户的帖子,php,mysql,select,blogs,categories,Php,Mysql,Select,Blogs,Categories,下午好, 通过按类别列出帖子,寻找一些方向 作为一名PHP初学者,我已经开始编写CMS,直到现在一切都进展顺利 我已经做了一个链接到预设类别1,类别2等 我还有一个带有ID和Category name的categories表 一个用于用户帖子的表,其中还包含CatID和类别名称 我猜我需要连接表才能列出特定类别中的任何帖子,选择Cat 1查看所有Cat 1帖子。与第2类、第3类等相同 当用户添加帖子时,它会在users posts表中填充类别名称,但我没有得到CAT ID,也没有在categor

下午好,

通过按类别列出帖子,寻找一些方向

作为一名PHP初学者,我已经开始编写CMS,直到现在一切都进展顺利

我已经做了一个链接到预设类别1,类别2等

我还有一个带有ID和Category name的categories表

一个用于用户帖子的表,其中还包含CatID和类别名称

我猜我需要连接表才能列出特定类别中的任何帖子,选择Cat 1查看所有Cat 1帖子。与第2类、第3类等相同

当用户添加帖子时,它会在users posts表中填充类别名称,但我没有得到CAT ID,也没有在categories表中添加任何内容,所以我如何调用它来显示分类帖子

我有一种感觉,我可能在想很多事情,把简单的事情复杂化了

我现在看到的代码完全无效

请帮我指出正确的方向,我什么都试过了

非常感谢大家提前

代码:


用于列出帖子的SQL可以检查URL中是否存在categoryID,如果存在,则使用它来过滤结果。。然后,您只需要创建一些指向同一页面的链接,将所需的类别id添加到URL

<a href='?cat=1'>Cat 1</a> | <a href='?cat=2'>Cat 2</a> | etc..

你的SQL是错误的,我认为这应该是可行的

$catSql = "SELECT *
    FROM        categories
    LEFT JOIN   users_posts
    ON          categories.ID = users_posts.CatID";

如果两个表都有ID列,那么ON条件没有任何意义,只有列列表和ID可能会导致重复列错误。您应该添加错误处理以查看到底是什么错误。谢谢您的回复。
$sql = "SELECT * FROM POSTS";
if(isset($_GET['cat'])){
    $catID = (int)$_GET['cat']; //or something similar
    $sql .= " LEFT JOIN category USING categoryID WHERE categoryID = $catID";
}
$catSql = "SELECT *
    FROM        categories
    LEFT JOIN   users_posts
    ON          categories.ID = users_posts.CatID";