чат повторно отправляет сообщение каждый раз, когда я обновляю sh страницу - PullRequest
0 голосов
/ 18 апреля 2020

Я делаю приложение для приватного чата для моего веб-сайта ... оно не обновляется автоматически sh (я не знаю, как сделать так, чтобы оно обновляло sh при добавлении нового сообщения в MySql база данных), поэтому мне нужно вручную обновить страницу sh, чтобы увидеть новые сообщения ... моя проблема в том, что когда я обновляю страницу sh, она также повторно отправляет последнее отправленное сообщение! Я не знаю, как исправить эту ошибку, поэтому любая помощь будет оценена. вот мой код:

<!DOCTYPE html>
<?php
session_start();
include("include/conection.php");
include("msg/function.php");
include("header.php");
?>
<?php

if(!isset($_SESSION['user_name'])){

header("location: index.php");

}
else{ ?>
<html>
<head>
<title>chat</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="js/jquery.min.js"></script>
<link rel="stylesheet" href="msg/style.css"/>
</head>
<style>

}
</style>
<body>
<?php
        if(isset($_GET['u_id'])){

        global $con;

        $get_id = $_GET['u_id'];

        $get_user = "select * from users where user_id='$get_id'";

        $run_user = mysqli_query($con,$get_user);

        $row_user=mysqli_fetch_array($run_user);

        $user_to_msg = $row_user['user_id'];
        $user_to_name = $row_user['user_name'];
        }

        $user = $_SESSION['user_name'];
        $get_user = "select * from users where user_name='$user'";
        $run_user = mysqli_query($con,$get_user);
        $row=mysqli_fetch_array($run_user);

        $user_from_msg = $row['user_id'];

        $user_from_name = $row['user_name'];

    ?>
<div class="col-sm-3" id='select_user'>
    <?php
        $user = "select * from users";

        $run_user = mysqli_query($con,$user);

        while ($row_user=mysqli_fetch_array($run_user)){

        $user_id = $row_user['user_id'];
        $user_name = $row_user['user_name'];
        $user_profile = $row_user['user_profile'];
        $u_name = $row_user['u_name'];
        echo"

        <div class='container-fluid'>
            <a style='text-decoration: none;cursor: pointer;color: #3897f0;' href='messages.php?u_id=$user_id'>
            <img class='img-circle' src='$user_profile' width='90px' height='80px' title='$user_name' /> <strong> &nbsp$u_name</strong><br><br>
            </a>
        </div>

        ";
        }
    ?>
</div>
<div class=>
    <div id="scroll_messages">
        <?php

            $sel_msg = "select * from user_messages where (user_to='$user_to_msg' AND user_from='$user_from_msg') OR (user_from='$user_to_msg' AND user_to='$user_from_msg') ORDER by 1 ASC";
            $run_msg = mysqli_query($con,$sel_msg);

            while($row_msg=mysqli_fetch_array($run_msg)){

            $user_to = $row_msg['user_to'];
            $user_from = $row_msg['user_from'];
            $msg_body = $row_msg['msg_body'];
            $msg_date = $row_msg['date'];
            ?>

            <div id="loaded_msg">
                <p><?php if($user_to == $user_to_msg AND $user_from == $user_from_msg){echo "<div class='message' id='blue' data-toggle='tooltip' title='$msg_date'>$msg_body</div><br><br><br>";} else if($user_from == $user_to_msg AND $user_to==$user_from_msg){echo "<div class='message' id='green' data-toggle='tooltip' title='$msg_date'>$msg_body</div><br><br><br>";}?></p>
            </div>

            <?php
            }


        ?>
    </div>
        <form action="" method="POST" >
            <input class="form-control" placeholder="Enter Your Message" name="msg_box" type="text" id="enter-msg" ></input>
            <input type="submit" name="send_msg" id="btn-msg" value="Send">
        </form>

    <?php
            $msg = htmlentities($_POST['msg_box']);
            $insert = "insert into user_messages(user_to,user_from,msg_body,date,msg_seen) values ('$user_to_msg','$user_from_msg','$msg',NOW(),'no')";

            $run_insert = mysqli_query($con, $insert);
    ?>

</div>
<div>
    <?php
        if(isset($_GET['u_id'])){

        global $con;

        $get_id = $_GET['u_id'];

        $get_user = "select * from users where user_id='$get_id'";
        $run_user = mysqli_query($con,$get_user);
        $row=mysqli_fetch_array($run_user);

        $user_id = $row['user_id'];
        $user_name = $row['user_name'];
        $u_name = $row['u_name'];
        $user_country = $row['user_country'];
        $user_profile = $row['user_profile'];
        $gender = $row['user_gender'];
        }


        echo "
            <div id='user_info'>
                <div class='col-sm-2'>
                </div>
                <center>
                <div style='background-color: #e6e6e6;' class='col-sm-9'>
                <h2>Information about</h2>
                <img class='img-circle' src='$user_profile' width='150' height='150' />
                <br><br>
                <ul class='list-group'>
                  <li class='list-group-item' title='Username'><strong>$u_name</strong></li>
                  <li class='list-group-item' title='Gender'>$gender</li>
                  <li class='list-group-item' title='Country'>$user_country</li>
                </ul>
                </div>
                <div class='col-sm-1'>
                </div>
            </div>
            ";

    ?>
</div>

 <script>
    var div = document.getElementById("scroll_messages");
    div.scrollTop = div.scrollHeight;
    setInterval (loadLog, 2500);
</script>
</body>
</html>
<?php } ?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...