2016-12-24 107 views
-2

我有問題表和主題表和問題表包含在線考試的主題明智的問題。如何在php mysql中獲取並顯示這些數據?

我需要提取主題名稱作爲標題的明智問題,並以主題明智的序列號顯示所有問題,例如:數學:Q1,Q2,Q3 英語:Q1,Q2,Q3等。 如何在php和mysql中實現它。問題表和主題表如下。

Question Table

Subject table

問題樣本數據在下面給出

Question sample

enter image description here

<?php 
    require_once 'config.php'; 
    //$con = mysqli_connect("localhost","root","","database_name"); 
    $query1 = "SELECT q.q_id,q.setq_no, q.qtext_eng, s.sub_id, s.sub_name 
    FROM question q 
    INNER JOIN subject s ON s.sub_id = q.sub_id 
    INNER JOIN questionset qs ON qs.qset_id = q.qset_id 
    WHERE qs.qset_id =2 ORDER BY s.sub_id"; 
    ?> 
<table class="table table-bordered"> 
<thead> 
<tr> 
    <th>Q.No</th> 
    <th>Q Set number</th> 
    <th>Q text eng</th> 
</tr> 

<?php 
$result1 = mysqli_query($link,$query1); 

while($row1 = mysqli_fetch_array($result1)) 
{ 
$subID = $row1['sub_id']; 
    $subName = $row1['sub_name']; 
    ?> 
    <h2><?php echo "$subName" ?></h2> 

<?php 
    error_reporting(0); 


    $sno++; 
    $qSet = $row1['setq_no']; 
    $qEng = $row1['qtext_eng']; 

?> 
<tr> 
    <td><?php echo $sno; ?></td> 
    <td><?php echo $qSet; ?></td> 
    <td><?php echo $qEng; ?></td> 
</tr> 
</tbody> 
</table> 
    <?php 
    } 
?> 
+0

請張貼一些簡約的文字樣本數據,預期產出和你試過等什麼遠 – GurV

+1

並接受解決你的其他問題已解決的答案 –

+0

那麼,顯示你的代碼,你有沒有嘗試過任何東西呢。在這裏你只能得到幫助如果你已經嘗試過任何東西。 – Kumar

回答

2

我包括一些來自question表在這裏你列的,你可以添加其他同樣的方式

<?php 
$con = mysqli_connect("localhost","root","","database_name"); 

$query1 = "SELECT q.q_id,q.setq_no, q.qtext_eng, s.sub_id, s.sub_name 
FROM question q 
INNER JOIN subject s ON s.sub_id = q.sub_id 
INNER JOIN questionset qs ON qs.qset_id = q.qset_id 
WHERE qs.qset_id =2 ORDER BY s.sub_id"; 

$presubID = 0; 

<table class="table table-bordered"> 
while($row1 = mysqli_fetch_array($result1)) 
{ 
    $subID = $row1['sub_id']; 
    if($subID != $presubID){ 
    $subName = $row1['sub_name']; 
    <h2><?php echo "$subName" ?></h2> 
    $sno=0; 

     <thead> 
     <tr> 
      <th>Q.No</th> 
      <th>Q Set</th> 
      <th>Q text eng</th> 
     </tr> 
     </thead> 
    } 
    $presubID = $subID; 

    $sno++; 
    $qSet = $row1['setq_no']; 
    $qEng = $row1['qtext_eng']; 

    <tr> 
    <td><?php echo $sno; ?></td> 
    <td><?php echo $qSet; ?></td> 
    <td><?php echo $qEng; ?></td> 
    </tr> 

<?php 
    } 
?> 
</table> 
+0

如果這回答你的問題,請接受並upvote我的回答 – ab29007

+0

我如何獲取一個單一的mysqli查詢使用內部連接 – Shaun

+0

你不應該在你的情況下,因爲然後外部while循環將是無用的,你必須針對不同的主題運行五個單獨的聯合查詢但無論如何這裏是一個很好的例子:http://www.w3schools.com/sql/trysql.asp?filename=trysql_select_join_inner – ab29007

相關問題