首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在php页面运行时获取更新后的表值

如何在php页面运行时获取更新后的表值
EN

Stack Overflow用户
提问于 2019-05-08 11:10:55
回答 3查看 51关注 0票数 0

我正在用php开发一个网站。我有一些问题。我想知道如何在不刷新页面的情况下运行php页面时获得修改后的表值。

代码语言:javascript
复制
<html>
<?php
function fun_get_user_name() {
    $host_name = "localhost";
    $db_user_name = "root";
    $password = "";

    $database_name = "database_name";
    $connect = mysqli_connect($host_name, $db_user_name, $password, $database_name);
    $query = "SELECT * FROM `users` ";
    $result = mysqli_query($connect, $query);
    $output = "";
    while ($row = mysqli_fetch_array($result)) {
        $output = $output."<br/>"..$row[0];
    }
}
?>
<script>
function js_function() {
    result = "<?php echo fun_get_user_name; ?>";
    document.getElementById('div_body_users').innerHTML = result;
}
window.setInterval(function() {
    js_function();
}, 1000);
</script>

<body>
    <div id="div_body_users">

    </div>
</body>

</html>

当我在phpmyadmin表中进行更改时,更改不会影响页面。但我期待更新后的表格。

EN

回答 3

Stack Overflow用户

发布于 2019-05-08 11:25:29

因此,将fun_get_user_name移动到另一个文件,然后在setInterval中对该文件执行n ajax调用。

代码语言:javascript
复制
$.get( "users.php", function( data ) {
  $( ".result" ).html( data );
  alert( "Load was performed." );
});

有关ajax请求的更多信息,请查看此链接https://api.jquery.com/jquery.get/

在user.php上,您只需添加fun_get_user_name

票数 0
EN

Stack Overflow用户

发布于 2019-05-08 13:10:17

你可以使用ajax来做这件事,这里修改了你的ajax url和数据库连接细节。

代码语言:javascript
复制
      <html>
      <?php
      function fun_get_user_name()
      {
          $servername = "localhost";
            $username = "root";
            $password = "root";
            $dbname = "test";

            // Create connection
          $conn = new mysqli($servername, $username, $password,$dbname);

          $sql = "SELECT * FROM users";
          $result = $conn->query($sql);
            if ($result->num_rows > 0) {
                          // output data of each row
                    while($row = $result->fetch_assoc()) {
                              echo "id: " . $row["id"]. " - Name: " . $row["name"]. "<br>";
                      }
                   } else {
                              echo "0 results";
               }


      }
      if($_GET['ajax']==1){
       $data=fun_get_user_name();

       echo $data;
       exit(0);

      }
      ?>
      <script src="https://code.jquery.com/jquery-2.2.4.min.js"></script>
      <script>
      $(document).ready(function(){

      setInterval(js_function,1000);

       function js_function()
       {         
        $.ajax({
            url: "http://localhost/test2/test.php?ajax=1",
            data: '',
            cache: false,
            processData: false,
            contentType: false,
            type: 'POST',
            success: function (result) {  
                 document.getElementById('div_body_users').innerHTML=result;
            }
        });

       }

      });
      </script>
      <body>
      <div id="div_body_users">
      </div>
      </body>
      </html>
票数 0
EN

Stack Overflow用户

发布于 2019-05-08 13:34:39

对于没有页面刷新的更新页面,您必须使用AJAX和setInterval函数。请查看下面的链接https://www.w3schools.com/asp/asp_ajax_intro.asp

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56032988

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档