過去2日間、私は関数をmysqliに変換してきました。私は問題に遭遇しました。私は、データベースから行を含む配列を返す関数があります。しかし、配列に複数行が含まれているようにしたい。また、どのようにして個々の投稿をエコーアウトすることができますか?ここでは、配列に1行しか表示されない失敗した試みがあります。MySqliと配列で複数の行を返す
$mysqli = new mysqli("localhost", "user", "password", "database");
function display_posts ($mysqli, $user_id) {
$fields = "`primary_id`, `poster_id`, `profile_user_id`, `post`";
$user_id = (int)$user_id;
$query = "SELECT DISTINCT $fields FROM `posts` WHERE `profile_user_id` = $user_id
LIMIT 4";
if ($result = $mysqli->query($query)) {
$row = $result->fetch_assoc();
return $row;
$result->free();
$stmt->close();
}}
ここでデータを表示しようとしています。
あなたが一度にすべてを取得するためにループを使用する必要が$user_id = 1;
$posts = display_posts($mysqli, $user_id);
//Not sure what to do with $posts. A While loop perhaps to display each post?
私はecへの答えを得ることを望んでいましたが個々の価値を引き出す前に、私は自分自身を考え出しました。それにもかかわらず、助けてくれてありがとう。私は関数 'resultToArray'を取り出し、元の関数に追加することにしました。 – jason328