[英]PHP/mysql, Using foreign keys to get data from another table
我有2個表,一個叫做posts
,一個叫做users
。 在posts
里面我有幾列,一列是userid
的外鍵。 在我的users
表中,我有幾個列,包括userid
和username
。 我想使用posts.userid
來查找users.userid
並顯示users.username
。 目前我正在使用:
SELECT posts.postid, posts.title, posts.text, posts.link, posts.good, posts.bad, posts.userid
FROM posts
要獲取有關每個帖子的數據,
SELECT users.username, users.userid, posts.userid
FROM users, posts
WHERE users.userid = posts.userid
獲取有關每個用戶的數據,但是當我這樣做時, echo $row_therealuserid['username'];
永遠只是第一個用戶。
您需要使用數組來獲取其他行 ,然后遍歷該數組。
$query = 'SELECT users.username, users.userid, posts.userid
FROM users, posts
WHERE users.userid = posts.userid';
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo $row['username'];
echo "<br />";
}
對於返回結果集的SELECT和其他語句,mysql_query()在成功時返回資源 ,或在出錯時返回FALSE。
資源是一個特殊變量,包含對外部資源的引用。 資源由特殊函數創建和使用,它可以由不同的函數創建和使用許多類型。
對於mysql_query(),返回的類型是一個資源是“ mysql結果 ”,它將被mysql_fetch_array()使用;
我將再舉一個例子,對於函數mysql_connect(),它返回一個資源類型“ mysql link ”,函數mysql_query()可以使用它
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.