2016-05-23 47 views
1

我正在尝试制作注册网站。 目前我有不同的表格,如用户,活动,门票,... 每个事件可以有多张门票。使用选定活动的门票打开新页面

当有人在网站上登录时,直接显示即将发生的事件。 该数据来自事件表。 (如事件ID,eventSDate,eventEDate,eventDescription ...) 在每个事件块上,还显示一个按钮。 (见代码)

<?php 

       $result = mysqli_query($con,"SELECT * FROM event WHERE eventSDate >= NOW() ORDER by eventSDate ASC"); 
       while($row = mysqli_fetch_array($result, MYSQL_BOTH)) { 



         echo '<tr> 
           <td><h8>'. $row['eventName'] .'</h8></td><br> 

           <td><h4><strong>Begin:</strong> &nbsp; ',date("d.m.Y", strtotime ($row['eventSDate'])),' &nbsp; ', date('H:i', strtotime ($row['eventSTime'])).' hr.<h4></td> 
           <td><h4><strong>Einde:</strong> &nbsp; ',date("d.m.Y", strtotime ($row['eventEDate'])),' &nbsp; ', date('H:i', strtotime ($row['eventETime'])).' hr.<h4></td> 
           <td><h4>'. $row['eventDescription'] .'</h4></td> 
           <td><h4>'. $row['eventID'] .' <input name="book" type="button" value="Ga verder" /></h4></td> 
           <br><br> 
          </tr>'; 
        } 

      ? 

现在我喜欢做如下:当有人点击按钮,一个新页面“tickets.php”应该打开该用户看到所有可用于特定事件的门票。 在票据表中,还存储了eventID字段。

我该如何达到这种情况?

回答

1

您可以使用表格发送给EVENTID这样tickets.php您可以显示该事件仅门票。 你的HTML变为:

<td><h4>'. $row['eventID'] .' 
     <form action="tickets.php" method="get"> 
      <input name="book" type="submit" value="Ga verder" /> 
      <input type="hidden" name="eventID" value="'.$row['eventID'].'"> 
     </form> 
    </h4></td> 

现在,在tickets.php你必须存储在$ _GET数组中的事件ID,所以你可以做这样的

$result = mysqli_query($con,"SELECT * FROM tickets WHERE eventID = ".$_GET['eventID'] ." ORDER by eventSDate ASC"); 
+0

查询应该设置你的按钮类型为“提交” –

+0

你是对的,编辑 – gbalduzzi

+0

作品完美! 感谢您的帮助! Grtz Benny – Benny

1

当你打印按钮,添加一个数据属性来存储事件ID ..

<td><h4>'. $row['eventID'] .' <input data-eid="'. $row['eventID'] .'" name="book" type="button" value="Ga verder" /></h4></td> 

然后添加一些javascrtipt使它像一个链接(例如用jQuery进行简单)

$("input[name='book']").click(function(){ 
    window.location = "tickets.php?eid="+$(this).data('eid'); 
}); 

现在你可以创建“tickets.php”,抓住从查询字符串事件ID,这样

$eventID = $_GET['eid']; 

使用这样的事情..

"select * from tickets where eventID = $eventID"