2017-03-07 99 views
-1

我已經搜索了我的答案,但所有的解決方案都不適合我的問題。我想建立一個論壇,首先從我的MySQL數據庫請求所有的問題。然後我想找出每個問題的最新條目的日期,所以我創造了這個:顯示來自mysqli_query的結果

while ($array = mysqli_fetch_assoc($res_page)) { 
    $get_latest_date = "select * from forum" 
        . " where id = " 
        . $array["id"] 
        . ' order by date DESC' 
        . ' limit 1'; 

    $latest_date = mysqli_query($con, $get_latest_date); 

    $date = mysqli_fetch_row($latest_date); 

    echo '<div class="forum_preview">' 
    . '<a href=#" class="forum_preview_question">' 
    . $array["question_short"] 
    . '</a>' 
    . '<p class="forum_preview_date">' 
    . $date["date"] 
    . '</p>' 
    . '<p class="forum_preview_comments">' 
    . $number_of_questions 
    . '</p>' 
    . '</div>'; 
} 

我的問題是,展示了最新的日期是不工作的,因爲我不能得到的結果出來的我mysqli_query。

任何人都可以告訴我我的錯誤在哪裏或者有沒有人有另一個想法?

在此先感謝!

+5

** WARNING **:當使用'mysqli'你應該使用[參數化查詢(http://php.net/manual/en/mysqli.quickstart.prepared-statements.php)和[ 'bind_param'](http://php.net/manual/en/mysqli-stmt.bind-param.php)將用戶數據添加到您的查詢中。 **不要**使用字符串插值或連接來完成此操作,因爲您創建了嚴重的[SQL注入漏洞](http://bobby-tables.com/)。 **不要**將'$ _POST','$ _GET'或**任何**用戶數據直接放入查詢中,如果有人試圖利用您的錯誤,這可能會非常有害。 – tadman

+0

做一個'join',不要用2個查詢。 – chris85

+0

@ chris85我只是看着它,它聽起來不錯,但我從來沒有做過,它會花費太多的時間來學習它的具體事情,我想有一個更容易和更快的解決方案 – sebjel

回答

0

我想你要找的是mysqli_fetch_assoc,mysqli_fetch_row返回一個數組,mysqli_fetch_assoc返回一個關聯數組,所以你可以通過鍵獲取數據。

$latest_date = mysqli_query($con, $get_latest_date); 
$date = mysqli_fetch_assoc($latest_date); 
echo $date["date"]; 
+0

它不適合我,沒有錯誤消息或任何顯示 – sebjel

+0

對不起,它確實爲我工作,非常感謝你! – sebjel