[英]PHP PDO fetch and foreach - I'm not getting the first column
這是我的第一篇文章,因此我將逐漸了解社區的工作方式,以便日后也能為您提供幫助。
我有一個index.php和db.php用於在一個非常小和簡單的應用程序中測試PDO,第一個是html,第二個是數據庫連接。
index.php
<h1><?php echo $fjoin_bookname; ?></h1>
<?php foreach($join as $j): ?>
<tr>
<td>
<?php echo 'Page: '. $j['pageNumber']; ?>
</td>
<td>
<?php echo $j['pageNote']; ?>
</td>
</tr>
<?php endforeach; ?>
db.php
//get books and pages Join
$query='SELECT *
FROM books
INNER JOIN pages
ON books.bookID = pages.bookID
ORDER BY pageNumber ASC';
$join = $db->query($query);
$fjoin = $join->fetch();
$fjoin_bookname = $fjoin['bookName'];
這是一個從書中獲取帶有相應注釋的頁碼的應用,這將有助於在不同設備上跟蹤幾本書。
問題:我沒有從“頁面”表中獲得第一行。 在插入fetch方法之前,一切正常
$fjoin = $join->fetch();
$fjoin_bookname = $fjoin['bookName'];
問題有人會幫助我解決這個問題嗎?
當您打電話給
$join->fetch()
它從當前位置返回項目並將光標移至下一個。 您可以將所有元素都提取到var中,然后從第一個元素中獲取fjoin_bookname:
db.php
//get books and pages Join
$query='SELECT *
FROM books
INNER JOIN pages
ON books.bookID = pages.bookID
ORDER BY pageNumber ASC';
$statement = $db->query($query);
$join = $statement->fetchAll();
$fjoin = $join[0];
$fjoin_bookname = $fjoin['bookName'];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.