在3个随机类别中获得3个随机线程

时间:2014-05-21 02:50:25

标签: php mysql mysql-error-1064

我为我的tafe作业制作论坛网站 我想要做的是从我的网站获得3个随机类别:

$sqlcat = 'SELECT *
 FROM category
 ORDER BY RAND()
 LIMIT 4';
 $resultcat = mysqli_query($con, $sqlcat) or die(mysqli_error($con)); //run the query 
 $rowcat = mysqli_fetch_array($resultcat);

并回应它们:(使用引导程序)

while ($rowcat = mysqli_fetch_array($resultcat))
{
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title"><?php echo $rowcat['name'];?></h3>
</div>
<div class="panel-body">
}

现在我试图获得3个随机线程(来自3个随机类别中的每一个)以显示3个类别中的每一个,我不知道如何编写sql来获得它。以下是类别和线程表,以防万一:

1   categoryID  int(10) 
2   name        varchar(40)
3   description varchar(50)`

1   threadID    int(10) 
2   title       varchar(80)     
3   memberID    int(10) 
4   adminID     int(10) 
5   categoryID  int(10) 
6   content     text
7   dateTime    datetime    

请帮忙!

1 个答案:

答案 0 :(得分:0)

简单示例

 // ...
 // getting categotires
 // ...
 <?php 
  while ($rowcat = mysqli_fetch_array($resultcat)):

   $category_id = $rowcat['categoryID'];

   $sql_threads = 'SELECT *
                   FROM `thread`
                   WHERE categoryID='.$category_id.' 
                   ORDER BY RAND()
                   LIMIT 3'; 

   $result_thread = mysqli_query($con, $sql_thread) or die(mysqli_error($con));   
 ?>
  <div class="panel panel-default">
  <div class="panel-heading">
  <h3 class="panel-title"><?php echo $rowcat['name'];?></h3>
     <?php  while ($row_thread = mysqli_fetch_array($result_thread)):?>
        <div><?php echo $row_thread['title']; ?></div>
     <?php endwhile;?>
  </div>
  <div class="panel-body">
<?php endwhile; ?>