亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 $wpdb 從 WordPress 中的數據庫獲取行會導致嚴重錯誤

使用 $wpdb 從 WordPress 中的數據庫獲取行會導致嚴重錯誤

PHP
慕的地8271018 2023-04-15 14:14:23
我的數據庫中有一個表attendants和一個頁面,results.php該頁面將包含所有返回行的數據。本質上我正在嘗試做兩件事:獲取表中的行數。對于表中的每一行,將其數據輸入到.card但是,在注釋掉幾行之后,我發現這一行在我的頁面上導致了嚴重錯誤:$results = $wpdb->get_results("SELECT * FROM attendants");不確定為什么?我認為這是 get_results() 函數,但根據文檔,這似乎是檢索行的正確方法?我也不認為正在檢索數據,因為當試圖回顯一個值時,它什么都不返回。結果.php<?phpglobal $wpdb;$results = $wpdb->get_results("SELECT * FROM attendants");$number_of_results = mysqli_num_rows($results);echo $results; // returns "Array"?><div class="resultsPage">    <div class="card">        <div class="card__header">            <!-- trying to print number of rows in attendants table -->            <!-- i.e there are 7 rows in this table, so $number_of_results should return 7 -->            <h4>Total respondants: <?php echo $number_of_results; ?></h4>        </div>    </div>    <?php    foreach($results as $result){         $first_name     = $result["first_name"];        $last_name      = $result["last_name"];?>        <div class="card">            <div class="card__copy">                <p><span class="card__data">Full name:</span> <?php echo $first_name+" "+$last_name; ?></p>            </div>        </div>    <?php } ?></div>
查看完整描述

1 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

首先,如果您有權訪問 phpMyAdmin,您能否檢查您的表 Attendants 是否以 wordpress 前綴為前綴?

如果是,您應該通過以下方式更改查詢:

global $wpdb;
$results = $wpdb->get_results("SELECT * FROM {$wpdb->prefix}attendants");

如果您的表是由插件或以 wordpress 方式創建的,則可以肯定它會以 wordpress 為前綴。

其次,您使用 mysqli_num_rows 函數,這是 php 方式,結果以 wordpress 方式返回(后面使用哪種類型的數據庫的抽象)。

由于您沒有提供 get_results 返回的結果類型,它是一個對象數組。

因此,要計算返回的結果,您應該使用:

$number_of_results = count($results);

因為它是循環中的一個對象,所以你應該使用符號:

$result->first_name

而不是數組符號。

希望能幫助到你


查看完整回答
反對 回復 2023-04-15
  • 1 回答
  • 0 關注
  • 127 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號