現在チャット機能をつくっており、DBにINSERTしてSELECTする所までできたのですが、下記のチャット欄にある文章がリロードするごとに増えていきます。
それを解決したいです。
例えば、林というテキストを送信したとします。そしたらINSERTした林は一回ですよね?
しかし、そこからリロードすると文字の林がリロードする度に増えていくのです。そしてDBにも格納されています。
原因がわかる方いましたら回答いただけると嬉しいです。
以下,PHP
//チャット機能エリア if($_POST['message']) {//messageボタンを押した時に $message = $_POST; $insertMsg = $db->prepare("INSERT INTO community_chat (member_id,community_id,message,created) VALUE (?,?,?,NOW())"); $insertMsg->execute(array( $member['id'], $_GET['id'], $message['message'] )); }; //チャット内容を取得する $sql = 'SELECT community_chat.* FROM community_chat INNER JOIN community ON community_chat.community_id = community.id AND community.id = \''.$_REQUEST['id'].'\' ORDER BY created DESC'; $stmt = $db->prepare($sql); $result = $stmt->execute(); $message = []; while($row = $stmt->fetch(PDO::FETCH_ASSOC)) { $message[] = $row['message']; }
以下、HTML部
<div class="mycomment"><!--mycommentエリアの開始--> <ul> <div> <?php foreach($message as $Msg) { ?> <li class="chat_Msg"><?php print($Msg) ?></li> <?php } ?> </div> </ul> </div><!--mycommentエリアの終了--> </div><!--chattingエリアの終了-->
宜しくお願いします。
回答2件
あなたの回答
tips
プレビュー