用ajax设置时,$ _ GET变量未保持设置状态? - php

抱歉,我是ajax的新手,而且编程一般。

我有一组div,每个div包含一组用于电子商务网站的产品。单击某个股票按钮时,一次只能看到一个div。

当用户单击在可见div内显示的产品时,该用户将被带到显示产品详细信息的新页面。基本上,我要执行的操作是在用户单击浏览器中的后退按钮时具有历史记录,我希望它返回到加载页面时可见的最后一个div。

当用户打开产品div时,我尝试使用ajax将变量发送到php文件,然后在用户敲击并重新加载页面时检索该变量。我可以使用ajax将变量fine发送给php文件,并使用相同的ajax函数的success属性返回。但是之后,当我尝试检索变量时,它显示为未设置。

Ajax发送方法:

    // when the user clicks the apparel stock button the corresponding div becomes visible 
    $("#stockApparel").click(function(){

      var $apparel = "apparel";

      $.ajax({

          url: "php/panel.php",

          data: { panel: $apparel },

          type: "get",

          dataType: "text",

          success: function(response){
              alert(response); // response is "apparel" as intended/
          },

      });


      $("#stockButtons").animate({left: '1140px'});
      $("#new").animate({left: '-470px'});
      $("#apparel").show(700);
      $("#marketing").hide(100);

      var divPosition = $('#shippingImg').offset();
      $('html, body').animate({scrollTop: divPosition.top}, "slow");

  });

获取方法以获取变量

$(window).load(function(){
         alert('window has been fully loaded');

        $.get("php/panel.php", function(data, status){
            alert("Data: " + data + "\nStatus: " + status); // returns as "variable not set".
        });

     });

php文件

if (isset($_GET['panel'])) { // check if varaiable has been set

    $panel  = $_GET['panel'];
    switch ($panel) {
        case "collectable":
            echo "collectable";
        break;

       case "apparel":
           echo "apparel";
       break;

       default:
    }
 } else echo "Variable not set."; // if variable is not set

?>

即使我将$ .get方法直接放在ajax send方法之后,我仍然得到从php文件返回的“未设置变量”,有什么想法我做错了吗?

参考方案

直接回答这个问题:不,获取参数不会在请求之间停留在服务器端。
但是,您可能需要阅读客户端-服务器交互的一些基础知识。简而言之,就是两个词:
panel.php?panel=value在第二种情况下-只是普通的GET请求而没有它。服务器自己不会保存有关先前请求的信息,也不必这样做。如果您想保留此信息,则可能要使用某种数据库逻辑或会话/ cookie缓存(有一个答案,提供了此的代码示例)。

PHP:将数组值加在一起 - php

我相信这比标题听起来要难一些,但我可能完全错了。我有一个像这样的数组:[["londrina",15],["cascavel",34],["londrina",23],['tiradentes',34],['tiradentes',21]] 我希望能够采用通用…

PHP JQuery复选框 - php

我有以下片段。 var myData = { video: $("input[name='video[]']:checked").serialize(), sinopse: $("#sinopse").val(), dia: $("#dia").val(), quem: $(&#…

PHP:获取调用引用的数组名称 - php

假定以下函数并调用:function doSomething( &$someArray ) { // Do something to $someArray } $names=array("John", "Paul", "George", "Ringo"); doSomet…

PHP-MySQL结果转换为JSON - php

我试图了解如何将MySQL结果转换为JSON格式,以便以后可以在Javascript中使用此JSON来构建HTML表。但是我的代码只是产生大量的空值,我还不明白为什么。$result = mysqli_query($con, "SELECT * FROM Customers"); $test = json_encode($result);…

PHP Count数组元素 - php

嗨,有人可以解释为什么这会返回“数组由0个元素组成”。 :$arr = array(1,3,5); $count = count($arr); if ($count = 0) { echo "An array is empty."; } else { echo "An array has $count elements.…