[英]How can I make a function read a database, grab ~10 posts (4 columns to each post) and return all the data?
我正在嘗試在php中編寫一個函數,以使用mysqli函數從mysql數據庫讀取帖子信息(標題,內容,作者,已發布)。 我對所有事物都相當陌生,包括mysqli,但是我已經盡了最大的努力,此刻已經做到了:
foreach(readPosts($pageid) as $posts)
echo $posts;
這只是顯示第一篇文章。 該功能如下
function readPosts($pageid) {
$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASS, DB_NAME);
if (mysqli_connect_errno()) {
return false;
}
$pageid = preg_replace("/[^0-9]/","",$pageid);
if ($result = $mysqli->query("SELECT * FROM posts WHERE pageID = '$pageid'")) {
while($row = $result->fetch_array()) {
$time1 = date('H:i \o\n jS M Y', $row['publishedtime']);
$postarray[$i++] = $row['title'];
$postarray[$i++] = $row['content'];
$postarray[$i++] = $row['author'];
$postarray[$i++] = $time1;
}
$result->close();
}
mysqli_close($mysqli);
return $postarray;
}
所以我的問題是,如何使它給我所有信息,而不僅僅是一個帖子信息。
謝謝
您可以使用$ result-> fetch_all()在此處查看文檔
在foreach循環中,每個readPost()調用都會建立一個新的mysql連接,該連接在返回之前關閉。 您應該在進行foreach操作之前先建立連接,然后像數組中那樣遍歷所選數據,並可能在最后一個循環之后關閉連接。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.