2013-08-31 46 views
0

我真的不確定是否需要嵌套查詢。第二個查詢只顯示一些初始查詢的行數據

我正在一個網站上,教師可以創建測驗來幫助他們的學生學習。我有一個簡單的查詢,可以根據與tbl_quiz_titles中的member_id匹配的成員的會話ID進行測驗,以此測試已登錄的教師已創建的測驗。

在每個測驗名稱下方都有一個按鈕(在表單中),允許教師轉到另一個頁面爲測驗添加一個徽章,如果學生獲得一定比例,則由老師確定。

這裏是我當前的代碼:

session_start(); 
    include "mysqlpdo_connect.php"; 
     $my_quiz_query = $pdo->query("SELECT * FROM tbl_quiz_titles WHERE member_id = '{$_SESSION['member_id']}'") ; 

$result_my_quiz_query = $my_quiz_query->fetchAll(PDO::FETCH_ASSOC); 

     foreach($result_my_quiz_query as $row_my_quiz_query) { 


echo $row_my_quiz_query['quiz_id'] . ": " . $row_my_quiz_query['quiz_name'] . "<br/> 

<form action=\"ebox_badge_new.php\" method=\"get\" style=\"float: left\"> 
    <input type=\"hidden\" name=\"ref\" value=\"" . $row_my_quiz_query['quiz_id'] . "\" />    
    <button><img src=\"images/icons/Add_Badge_Btn.gif\" alt=\"Add badge to quiz\" width=\"100\" height=\"25\" border=\"0\" /></button> 
</form> 
<br/> 
<br/> 

"; 

     } 

的問題是,這個查詢顯示每個測驗名稱下方的表格按鈕。一旦老師爲他們的測驗添加了徽章,我不再希望他們看到表格爲該特定測驗添加徽章。

需要注意的是,徽章存儲在tbl_badges中,而測驗ID存儲在「badge_quiz_id」列中。

因此,我的問題是:如何更改代碼,以便表單按鈕僅顯示那些尚未與其關聯的徽章的測驗?

即: $ row_my_quiz_query [ 'quiz_name']

應呼應對於每個測驗,而應僅被顯示的形式,其中$ row_my_quiz_query [ 'quiz_id']不tbl_quiz_badges.badge_quiz_id見過?

任何提示將不勝感激。

乾杯,戴夫

+0

你需要加入查詢 –

回答

0

感謝您指出我在正確的方向「你的常識」。

這是我想出了,這似乎這樣的伎倆:

<?php 
    session_start(); 
    include "mysqlpdo_connect.php"; 
     $my_quiz_query = $pdo->query("SELECT * 
FROM `tbl_quiz_titles` 
LEFT JOIN 
    `tbl_badges` 
ON  `member_id` = '{$_SESSION['member_id']}' 
    AND `quiz_id` = `badge_quiz_id`") ; 





$result_my_quiz_query = $my_quiz_query->fetchAll(PDO::FETCH_ASSOC); 

     foreach($result_my_quiz_query as $row_my_quiz_query) { 


echo $row_my_quiz_query['quiz_id'] . ": " . $row_my_quiz_query['quiz_name'] . "<br/>"; 

if ($row_my_quiz_query['badge_quiz_id'] == "") 
{ 


echo" <form action=\"ebox_badge_new.php\" method=\"get\" style=\"float: left\"> 
    <input type=\"hidden\" name=\"ref\" value=\"" . $row_my_quiz_query['quiz_id'] . "\" />    
    <button><img src=\"images/icons/Add_Badge_Btn.gif\" alt=\"Add badge to quiz\" width=\"100\" height=\"25\" border=\"0\" /></button> 
</form> 
<br/> 
<br/> 

"; 
    } 
     } 
     ?> 
相關問題