Php 在自定义编码论坛的正确标题下显示类别

Php 在自定义编码论坛的正确标题下显示类别,php,mysql,database,forum,Php,Mysql,Database,Forum,我似乎找不到一种方法来链接类别和标题使用我的自定义编码论坛 以下是类别表的图片: 以及标题表的图片: 现在,这两个表都有一个外键链接,即: ALTER TABLE categories ADD FOREIGN KEY(cat_head) REFERENCES headers(head_id) ON DELETE CASCADE ON UPDATE CASCADE; 我的论坛图片: (请注意,每个类别都会在“服务器”标题下显示。如果我正确理解您的问题 两个表上的2个查询都可以做到这一点

我似乎找不到一种方法来链接类别和标题使用我的自定义编码论坛

以下是类别表的图片:

以及标题表的图片:

现在,这两个表都有一个
外键
链接,即:

ALTER TABLE categories ADD FOREIGN KEY(cat_head) REFERENCES headers(head_id) ON DELETE CASCADE ON UPDATE CASCADE;
我的论坛图片:


(请注意,每个类别都会在“服务器”标题下显示。

如果我正确理解您的问题

  • 两个表上的2个查询都可以做到这一点
用于从标头表检索详细信息的第一个查询 =>获取头部id

然后

对category表的第二次查询 =>将cat_头部与头部id进行比较,并检索cat详细信息

更新

我将上述想法用于我的自定义论坛。
示例代码

这就是我的意思。
今天我一定会尝试下面这样的加入操作。

         $result=queryMysql('SELECT * FROM headers LEFT JOIN categories ON head_id = cat_head');    //My custom function for query execution, returns the result    
             $new_head="";
             $pre_head="";
            while($row =$result->fetch_array(MYSQL_ASSOC))
                {               
                        $new_head= $row['head_name'];

                        if($new_head!=$pre_head){
                          echo $new_head;
                        }
                         if($row['cat_name']!=null or $row['cat_description']!=null){
                          echo $row['cat_name'];
                          echo $row['cat_description'];
                        }
                        else {
                             echo "No categories yet";
                         }

                        $pre_head=$row['head_name'];
                }
我想你现在明白了


改进了格式,并直接在帖子中添加了图片。尝试获取标题id并将其与猫头进行比较时运气不佳。您能给我一个示例代码来说明您的意思吗?我尝试了以下方法:代码:
$currentCategory=“”;如果($currentCategory==“| |$currentCategory!=$category\u title){
我还进行了“完全外部连接”在两个要比较的表上,没有运气。我认为左连接在你的情况下更好,因为每个类别都在一些标题下。没有。在论坛管理面板中创建类别时,会分配一个标题。这些标题是FOREIN键链接到cat_head和head_id。非常感谢!我不得不稍微修改一下代码,但它起了作用很好。再次谢谢你!:)
         $result=queryMysql('SELECT * FROM headers LEFT JOIN categories ON head_id = cat_head');    //My custom function for query execution, returns the result    
             $new_head="";
             $pre_head="";
            while($row =$result->fetch_array(MYSQL_ASSOC))
                {               
                        $new_head= $row['head_name'];

                        if($new_head!=$pre_head){
                          echo $new_head;
                        }
                         if($row['cat_name']!=null or $row['cat_description']!=null){
                          echo $row['cat_name'];
                          echo $row['cat_description'];
                        }
                        else {
                             echo "No categories yet";
                         }

                        $pre_head=$row['head_name'];
                }