0

これは私の最初の投稿です...

私が書いているhtml/phpのニュースフィード関連の機能について質問があります。Facebookが使っている「壁」に似ているとも言えます。

そのため、ページの上部に入力フィールドがあり、ユーザーが書いたテキストを投稿してデータベースに挿入します。

テキストは後でエコーを使用してページに出力されます。

ここまでは順調ですね。メッセージ、作成者、時間などをデータベースから取得しています。すべての情報を正しい位置に表示して、1 つのメッセージを表示できました。問題は次のとおりです。送信された各メッセージを個々の div でエコーアウトしたい。各メッセージが表示される個々のコンテナを作成するために、順序付けられていないリストを使用しています。

ここで、ロジック部分について支援をお願いします。どうすればいいですか?

これまで私が考えていたのは、送信されたメッセージごとにインクリメントされた非表示の ID を投稿することです。次に、Web サイトは、Web サイトに表示されている最新のメッセージよりも高い ID を持つメッセージが存在するかどうかを確認します。より高い ID を持つメッセージがある場合、この特定のメッセージは別の li にエコー アウトされます。ただし、これらの新しい li がどのように自動的に作成されるかはわかりません。最新の表示よりも高い ID の値が存在する場合は、li をエコーアウトすることもできます。

また、フェッチ機能についても不思議です。テーブルからフェッチしたいものを指定し、後でこのフェッチされたデータを指定された div にエコーするにはどうすればよいですか?

TLDR? 私がしたいこと。

  1. ユーザーはテキストを書いて送信します。
  2. テキストがデータベースに挿入されます。
  3. 最後に挿入されたテキストを取得します。
  4. 取得したテキストを新しい li にエコーします。

明確にしておくべきことがあれば、教えてください。よろしくお願いします。

編集; たくさんの投稿があるこの大きなフィードがあるとしますが、そのうちのいくつかだけを表示したいとします。4 人のユーザーがいて、そのうちの 2 人は viewID 0 を持ち、他の 2 人は viewID 1 を持っているとします。ID 0 のユーザーが何かを送信すると、ID 0 のユーザーだけがこのメッセージを表示します。これはどのように達成されますか?ユーザーがメッセージを投稿すると、非表示のビューIDも投稿されると思います。その後、viewID = 0 などのデータベースから SELECT します。おそらく、これは Cookie/セッションを使用して実行できますか? これが上に書かれていることからの大きな一歩であるかどうかわかりませんか?

でも。html をエコーできることをちょっと忘れていたので、取得したテキストを含む私の個々の li/div はこの方法で実行でき、送信時に即座にフェッチしてエコーすることができました。

4

1 に答える 1

0

htmlでエコーアウトできますphp。フェッチに関しては、オブジェクト指向の方法をお勧めします

$sql = "SELECT * FROM table_name" // note this could be of many forms depending on your needs.

$result = $sql->query();

while($row = $result->fetch_object()){
  echo '<li><div>' . $row->comment . '</div></li>';
}

したがって、データベース内のすべてのクエリ、つまりすべての投稿に対して、li 内に新しい div を作成します。

このコードはすべてul、php の開始タグでラップされた単一の要素に入ります。

于 2012-10-29T15:42:00.967 に答える