结合两个pdo查询显示第二个的所有结果。

时间:2014-02-12 15:04:52

标签: html pdo

我有一张表列出了事件和出席情况。要尝试数据库规范化,我将其拆分为两个表。 我已经建立了一个数据库,列出了团队的所有计划游戏。 表1

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+name   +  organiser  +  date  +  location  +  cost  +  notes  +  id+
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
然后,我有了第二个数据库,每个人都知道他们将如何进行标记 表2

++++++++++++++++++++++++++
+id  +  event  +  player +
++++++++++++++++++++++++++

每个id都是唯一的,表1中的id用作表2中的事件。

我有一个简单的PDO查询,它将表1中的数据拉入HTMl表

if($db->connect_error) {
                die("Connection error: ".$db->connect_error);
                }
                $sql = $db->query('SELECT * FROM event ORDER BY `date` ASC'
                ) or die($db->error);
                echo"";
                while($row = mysqli_fetch_assoc($sql))  
                {
                $a = $row['attendees'];//will look up attendies to tick a check box if already aknowledged
                $b = htmlentities($_SESSION['user']['username'], ENT_QUOTES, 'UTF-8');
                if (strpos($a,$b) !== false) {
                $c = "checked='checked'";
                    }else{
                $c = "";
                }   
                $r=$row['id'];
                echo "<div id='results'>";
                echo "<CENTER>";
                echo "<table  BORDER=6 class='fixed'>";
                echo "<TR> ";
                echo "<TD COLSPAN=3 ALIGN=CENTER><form action='going.php' method='post' name='form".$r."'>Event ".$row['name']." i'm going 
                <input type='checkbox' name='going'".$c." onclick='document.form".$r.".submit ();'>
                <input type='text' name='Organise' value='".$r."'>
                <input type='text' name='name' value='".$b."'>
                </form></TD>";
                echo "</TR> ";
                echo "<TR>";
                echo "<td>";
                echo "<B><u><font color='#0080FF'>Title </font></b></u>".$row['name']."<br></font>";
                echo "<B><u><font color='#0080FF'>Orginiser </font></b></u>".$row['organiser']."<br></font>";
                echo "<B><u><font color='#0080FF'>When </font></b></u>".date("D j-M-Y GA",$row['dt'])."<br></font>";
                echo "<B><u><font color='#0080FF'>Location </font></b></u>".$row['location']."<br></font>";
                echo "<B><u><font color='#0080FF'>Cost </font></b></u>£".$row['cost']."<br></font></TD>";
                echo "<TD ROWSPAN=3 valign='top'><B><u><font color='#0080FF'>Attendies </font></b></u>".$row['attendees']."<br></font></TD>";//will change to table 2                   
                echo "<TD ROWSPAN=3 valign='top'><B><u><font color='#0080FF'>notes </font></b></u>".$row['notes']."<br></font></TD>";       
                echo "</tr>";                   
                echo "</table>";
                echo "</CENTER>";
                echo "</div>";
                }

我尝试使用

尝试并加入这些内容
                    $sql = $db->query('SELECT t1.*, t2.event as t2event, t2.player as player
                FROM `event` as t1
                LEFT JOIN `going` as t2 on t1.id = t2.event
                ORDER BY t1.`dt` ASC'

但我得到的是每个活动和每个玩家的HTML表格。我确定它可能但是无法解决,我可以从查询表1中创建一个html表,并将所有那些从表2中添加到不仅仅是一个或每个都创建结果的表。 ?

0 个答案:

没有答案