簡體   English   中英

PHP PDO提取和foreach-我沒有獲得第一列

[英]PHP PDO fetch and foreach - I'm not getting the first column

這是我的第一篇文章,因此我將逐漸了解社區的工作方式,以便日后也能為您提供幫助。

我有一個index.phpdb.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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM