dongqiuqiu4736 2012-10-21 03:16
浏览 59

在AJAX请求期间无法识别PHP会话

I've created a navigation bar where an admin can add and remove links with a simple form. When the form is submitted to add a link, an AJAX call is made to add the new information into the mySQL database. As part of the callback function, the navigation bar is updated to include the new link using the following line of code:

$('.nav ul').load('/getnav.php');

The file getnav.php is as follows:

<?php
  require('/connect.php');
  $query = "SELECT id, title, url
            FROM nav
            ORDER BY position ASC";
  $result = $mysqli->query($query);

  while ($data = $result->fetch_assoc()) {
        if (!empty($_SESSION['valid']))
           echo '  <div class="container"><button type="button" name="'.$data['id'].'" class="delButton" alt="Delete"></button></div>
';
  echo '  <a href="'.$data['url'].'" alt="'.$data['title'].'">'.$data['title'].'</a>
';
}
?>

The issue is that when the nav bar is updated in the AJAX call, only the links are being shown, and the delete buttons disappear. $_SESSION['valid'] is set, so the code right after the if SHOULD be executed. However, it's that if's code that is missing after the AJAX call is made. The only explanation I have for this is that when getnav.php is being loaded into .nav ul, the session isn't being accessed. Anyone know why that is?

  • 写回答

3条回答 默认 最新

  • dongzhuandian3292 2012-10-21 03:20
    关注

    This is hard to diagnose without the full code.

    • Did you start the session with session_start(); ?

    • Can you try to var_dump $_SESSION?

    评论

报告相同问题?

悬赏问题

  • ¥15 Oracle中如何从clob类型截取特定字符串后面的字符
  • ¥15 想通过pywinauto自动电机应用程序按钮,但是找不到应用程序按钮信息
  • ¥15 MATLAB中streamslice问题
  • ¥15 如何在炒股软件中,爬到我想看的日k线
  • ¥15 51单片机中C语言怎么做到下面类似的功能的函数(相关搜索:c语言)
  • ¥15 seatunnel 怎么配置Elasticsearch
  • ¥15 PSCAD安装问题 ERROR: Visual Studio 2013, 2015, 2017 or 2019 is not found in the system.
  • ¥15 (标签-MATLAB|关键词-多址)
  • ¥15 关于#MATLAB#的问题,如何解决?(相关搜索:信噪比,系统容量)
  • ¥500 52810做蓝牙接受端