我在我的數據庫中的兩個表選擇合適的數據爲用戶
U_ID表的任務是從表的用戶ID的外鍵
我的代碼是這樣的
<?php
require("common.php");
if(empty($_SESSION['user']))
{
header("Location: login.php");
die("Redirecting to login.php");
}
$query = "
SELECT
id,
username,
eID
FROM users
WHERE id <> '5'
";
$query1 = "
SELECT
T_ID,
task_tom,
U_ID
FROM tasks
ORDER BY T_ID DESC LIMIT 1
";
try
{
$stmt = $db->prepare($query);
$stmt->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$rows = $stmt->fetchAll();
try
{
$stmt1 = $db->prepare($query1);
$stmt1->execute();
}
catch(PDOException $ex)
{
die("Failed to run query: " . $ex->getMessage());
}
$rows1 = $stmt1->fetchAll();
?>
<h1>Memberlist</h1>
<table border="1">
<tr>
<th>Username</th>
<th>Employee ID</th>
<th>Task</th>
</tr>
<?php foreach($rows as $row): foreach($rows1 as $row1): ?>
<tr>
<td><?php echo htmlentities($row['username'], ENT_QUOTES, 'UTF-8'); ?></td>
<td><?php echo htmlentities($row['eID'], ENT_QUOTES, 'UTF-8'); ?></td>
<td><?php echo $row1['task_tom']; ?></td>
<?php endforeach; endforeach;?>
</table>
<br/>
<a href="edit_account.php">Edit Account</a><br /><a href="logout.php">Logout</a>
我的問題是我如何填充表中的任務列,對應於正確的U_ID。
這個代碼將提供給我這個答案
據稱,SSIS(數據挖掘)僅僅是分配給巴希爾和勞倫斯應該有一個空白的任務,因爲用戶didnt輸入勞倫斯任何任務,只是還沒有在task_tom但似乎我對我的選擇語句有缺陷,或者它是我的每個用戶將它打印在桌面上的每個用戶。所以我的問題是如何解決這種問題?
不要使用兩個查詢..而是加入他們與用戶ID – 2013-03-26 07:03:42
請你可以請進一步向我解釋我的好先生 – Yinks 2013-03-26 07:05:05
好吧看到你的任務每個任務有其各自的用戶ID。你可以連接你的任務表u_id到用戶表ID來產生只有1個結果,這是你輸出的樣子看起來像 – 2013-03-26 07:06:52