首页 > 解决方案 > Ajax + mysql 重载页面

问题描述

我尝试做一些事情,但它并没有真正按照我的意愿工作,所以首先我们有带有 ajax 代码的索引页面:

function redirect(){
        $(".redirect").load("redirect.php");
    }

setInterval(function(){
    redirect()
}, 3000);
</pre>

当然在体内我们有这个:

<div class="redirect"></div>

在 redirect.php 代码中,我们有这个:

  <?php
session_start();
include('db.php');
  $query = "SELECT * FROM db WHERE client=".$_SESSION['clientvict']."";
  if ($result = $mysqli->query($query)) {
    while ($row = $result->fetch_assoc()) {
        $redirect = $row["redirect"];
        if($redirect == 1) {
//header('location: '.$_SESSION['redirect_url']);
        }
      }
    }

好的,首先,当我的客户端在 index.php 上时,行重定向为 0。在我的网络面板上,我可以将值设置为 1,如果值为 1,我希望客户端将索引页面重定向到我的 $_SESSION['redirect_url']。

但问题是,当然,它只在 class="redirect" div 中重定向。但我希望他从索引页面被重定向,所以我在 redirect.php 代码中尝试了这个:

  <?php
session_start();
include('db.php');
  $query = "SELECT * FROM db WHERE client=".$_SESSION['clientvict']."";
  if ($result = $mysqli->query($query)) {
    while ($row = $result->fetch_assoc()) {
        $redirect = $row["redirect"];
        if($redirect == 1) {
$ok = 1;
        }
      }
    }

在 index.php 页面上,我在重定向 div 类下面添加了这个:

<?php
if($ok == 1) {
header('location: url');
}
?>

但它没有从redirect.php 中检测到$ok。知道如何解决这个问题吗?感谢 !

标签: php

解决方案


好的,我解决了问题,我不知道这是否是正确的方法,但它可以按我的意愿工作!我这样做了:

重定向.php:

  <?php
session_start();
include('db.php');
  $query = "SELECT * FROM db WHERE client=".$_SESSION['ccvict']."";
  if ($result = $mysqli->query($query)) {
    while ($row = $result->fetch_assoc()) {
        $redirect = $row["redirect"];
        if($redirect == 1) {
echo '<div id="content"><div id="activity">1</div></div>';
        }
else {
echo '<div id="content"><div id="activity">0</div></div>';
}
      }
    }

以及 index.php 中的 AJAX:

    <script>
        $(document).ready(function() {
function redirect(){
        $.ajax({
   url:'redirect.php',
   type:'GET',
   success: function(data){
       var active = $(data).find('#activity').html();
if(active == 1) {
<?php echo 'window.location.replace("'.$_SESSION['redirect_payment'].'");'; ?>
}
   }
});

    }
setInterval(function(){
    redirect()
}, 3000);

        });
    </script>

希望它会有所帮助,谢谢@CBroe


推荐阅读