0

誰かをフォローすると、そのツイートを受け取る、Twitter のようなフォロー システムを作成するにはどうすればよいですか。「users」、「followings」、「posts」というデータベース テーブルがあります。users テーブルには、サイトにいるユーザーが保持されます。以下は人のフォロワーを示しています。このテーブルは「id、user_one、user_two」のように設定されています。posts テーブルには、一意のユーザーが持つすべてのツイートまたは投稿が保持されます。

各ユーザーのプロフィール ページにフォロー ボタンを設定しました。また、ユーザー用のニュース フィードもありますが、そのニュース フィードでは、ログインしているユーザーがフォローしているユーザーからの投稿を表示する必要があります。とにかく、ユーザーに誰かをフォローしてもらい、ニュースフィードでそのユーザーからの投稿を受け取ることはできますか?

今、私はいくつかの調査を行いました.彼らのシステムは機能していないようです. このエラーが発生し続けました:

警告: implode() [function.implode]: 無効な引数が 12 行目の function.php に渡されました

SELECT 
  user_id, 
  body, 
  stamp 
FROM posts 
WHERE user_id in () 
ORDER BY stamp DESC

警告: mysql_fetch_object(): 指定された引数は、function.php の有効な MySQL 結果リソースではありません。

ここにあるこの行は、その人をフォローするとツイートなどを受け取る場所を作るのに役立つと思われていました

function show_posts($userid,$limit=0){
$posts = array();

$user_string = implode(',', $userid);
$extra =  " and id in ($user_string)";

if ($limit > 0){
    $extra = "limit $limit";
}else{
    $extra = '';    
}

$sql = "select user_id,body, stamp from posts 
    where user_id in ($user_string) 
    order by stamp desc $extra";
echo $sql;
$result = mysql_query($sql);

while($data = mysql_fetch_object($result)){
    $posts[] = array(   'stamp' => $data->stamp, 
                        'userid' => $data->user_id, 
                        'body' => $data->body
                );
}
return $posts;

}

他のユーザーからの投稿を表示するはずのこのコードがこの問題を引き起こしていると思いますが、その理由はわかりません。

4

1 に答える 1