Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/72.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 页面未输出与id关联的正确数据_Php_Mysql_Prepared Statement - Fatal编程技术网

Php 页面未输出与id关联的正确数据

Php 页面未输出与id关联的正确数据,php,mysql,prepared-statement,Php,Mysql,Prepared Statement,我正在设计一个论坛。我要提到的页面是discussions.php和forum\u view\u category.php 讨论是显示不同类别的页面 论坛\视图\类别是显示该类别内主题的页面 到目前为止,我只是测试这一点,只有两个类别。它们的id为1和2。每当我点击链接进入forum_view_category页面时,都会显示正确的链接以及我所点击的链接的相应id 我的问题是,类别1的帖子显示在类别1和类别2中。我在第2类中没有任何主题,所以我的else语句应该与之相呼应 “我的讨论”页面有此链

我正在设计一个论坛。我要提到的页面是discussions.php和forum\u view\u category.php

讨论是显示不同类别的页面

论坛\视图\类别是显示该类别内主题的页面

到目前为止,我只是测试这一点,只有两个类别。它们的id为1和2。每当我点击链接进入forum_view_category页面时,都会显示正确的链接以及我所点击的链接的相应id

我的问题是,类别1的帖子显示在类别1和类别2中。我在第2类中没有任何主题,所以我的else语句应该与之相呼应

“我的讨论”页面有此链接,可以访问相应的论坛\查看\类别页面

$categories = "<a href='forum_view_category.php?cid=".$categoryid."'>" . $categoryTitle . "</a>";
从论坛主题作为t加入论坛帖子作为p on t.id=p.topic\u id 按t.id描述分组“

注释掉的查询是我的旧查询。我如何将旧查询与新查询连接起来?

简单地说-

mysqli_query($con,"SELECT t.*, COUNT(p.topic_id) AS tid2 FROM forum_topics AS t JOIN forum_posts AS p on t.id = p.topic_id WHERE t.category_id = ".$cid." GROUP BY t.id DESC")
or die ("Query2 failed: %s\n".($query2->error));

在你的查询2的末尾,这使得我的查询失败。你能在添加这个where子句后发布更新的查询以查看什么可能是错误的…我在这里尝试过…
$query2=mysqli\u query($con),选择t.*,从论坛主题中计算(p.topic\u id)作为tid2作为t.id=p.topic\u id组中的p.id DESC其中
category\u id`='“$cid.”和这里的
$query2=mysqli\u query($con,“选择t.*,将(p.topic\u id)作为tid2从论坛主题中计算出来,其中
category\u id`='''.$cid.”“作为t加入论坛\u帖子作为p on t.id=p.topic\u id GROUP BY t.id DESC”)`好的,我知道了。。只需放入[WHERE t.category_id=“.cid]”并确保不添加任何额外元素…如逗号etciHappy to help becky…!!::),唯一的问题是t.id DESC在分组前的空间太小。。。
//$query2 = mysqli_query($con,"SELECT * FROM forum_topics WHERE `category_id` ='".$cid."' ORDER BY topic_reply_date DESC")
$query2 = mysqli_query($con,"SELECT t.*, COUNT(p.topic_id) AS tid2 
mysqli_query($con,"SELECT t.*, COUNT(p.topic_id) AS tid2 FROM forum_topics AS t JOIN forum_posts AS p on t.id = p.topic_id WHERE t.category_id = ".$cid." GROUP BY t.id DESC")
or die ("Query2 failed: %s\n".($query2->error));