我正在尝试使其能够在所有事件中获得所有用户的tour_regid,但它仅选择数据库中的第一个条目,然后当我基于该regid加入两个表时,它仅显示一个条目。
关于如何获得所有用户的tour_regid的任何想法?
这是我目前拥有的:
<?
$stmt = $DB_con->prepare('SELECT tournament_regid, paid FROM tournament_registration WHERE userid= :session_id');
$stmt->bindParam(':session_id', $_SESSION['user']['id']);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
$regid = $row['tournament_regid'];
?>
<?
$stmt = $DB_con->prepare("SELECT * FROM tournament_registration JOIN tournaments ON tournament_registration.tournament_regid = tournaments.tournamentid WHERE tournaments.tournamentid = :regid");
$stmt->bindParam(':regid', $regid);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
?>
<h1> Event Name: <? echo $row['tournament_name'];?> </h1>
<h1> Event Date: <? echo $row['tournament_date'];?> </h1>
<h1> Event Time: <? echo $row['tournament_time'];?> </h1>
<h1> Event Desc: <? echo $row['tournament_dec'];?> </h1>
<h1> Paid: <? echo $row['paid'];?> </h1>
<h1> <? echo $row[''];?> </h1>
<a href="viewevent.php?event_id=<?php echo $row['tournament_regid'];?>"> VIEW Event Details </a>
<h1>
<?php echo $regid;?>
</h1>
<?
}
}
?>
更新的SQL查询:现在的问题是,它看起来像获得了所有人的青睐吗?因为现在显示了大量数据。
<?
$stmt = $DB_con->prepare("
SELECT
*
FROM
users
INNER JOIN
tournament_registration ON tournament_registration.userid = :userid
INNER JOIN
tournaments ON tournaments.tournamentid = tournament_registration.tournament_regid
");
$stmt->bindParam(':userid', $_SESSION['user']['id']);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC))
{
?>
最佳答案
“选择
tour_registration.tournament_regid
从
使用者
内部联接
Tournament_registration ON Tournament_registration.userid = users.userid
内部联接
Tournaments.tournamentid = Tournament_registration.tournament_regid上的锦标赛
”
使用此更新的sql查询来实现