今日 PDO を学習したばかりで、PHP/MySQL を使用して学習するために Twitter のクローンを作成している最中です。
これは、データベース内の特定の user_id (Twitter フィードのようなもの) の下のすべてのツイートを表示することになっているコードのスニペットです。
<?php
$all_tweets = showtweets($pdo, $_SESSION['user_id']);
if (count($all_tweets)) {
foreach($all_tweets as $key => $value) {
?>
<div class="tweet">
<?php
echo $key['tweet'] . "<br>
Written By: " . $_SESSION['user_id'] . " on " . $key['time'] . "<br>";
?>
</div>
<?php
};
} else {
echo "You haven't posted anything yet!";
};
?>
これが私のphpコードの関数showtweetsです
function showtweets($pdo, $user_id) {
$show_tweets_stmt = "SELECT tweet, time FROM tweets WHERE id=:user_id
ORDER BY time DESC";
$show_tweets = $pdo->prepare($show_tweets_stmt);
$show_tweets->bindParam(':user_id', $_SESSION['user_id']);
$show_tweets_execute = $show_tweets->execute();
if (!$show_tweets_execute) {
printf("Tweets failed to be retrieved! <br> %s", $pdo->error);
} else {
$tweets_array = $show_tweets->fetchAll();
return $tweets_array;
};
}
実行してみましたが、印刷された0isset($all_tweets)
をエコーしながらtrueを返しました。count($all_tweets)
関数コードに何か問題があると思いますaddtweets
。これに一日中手を出していますが、機能させることができません。
何かアドバイス?どうもありがとう