我已经使用 ajax 将一些数据加载到显示用户发票列表的 div 中。我必须开始会话才能获取用户 ID。它在本地主机 PHP 7.2 中工作正常,但在服务器 PHP 7.0 上它有时会说“无法清除会话锁定记录”,有时它会工作。谁能帮我解决这个问题,我将非常感谢...
我试图删除 session_start() 但它停止了我的所有代码。当我将服务器 PHP 7.0 更改为 5.0 时,它运行良好,但由于 PHP 的旧版本,我的其他一些库停止工作......
下面是在 div 中使用 ajax 获取的数据。并且 div 显示该警告。
<?php
session_start();
$assoc_id = $_SESSION['ayp_associate_id'];
include('../../../data/db.php');
if (isset($_POST['fetch_data'])) {
$query = $conn->query("SELECT * FROM `transaction_details` WHERE `agentid` = '$assoc_id' ORDER BY `id` DESC LIMIT 300");
if ($query->num_rows > 0) {
while ($row = mysqli_fetch_assoc($query)) {
$get_book = $conn->query("SELECT `packid` FROM `booking` WHERE `id` = " . $row['bookingid']);
while ($book = mysqli_fetch_assoc($get_book)) {
$pack_id = $book['packid'];
}
$get_pack = $conn->query("SELECT `package-name` FROM `packages` WHERE `id` = $pack_id");
if ($get_pack == true) {
while ($pack = mysqli_fetch_assoc($get_pack)) {
$package_name = $pack['package-name'];
}
} else {
$package_name = "Unknown Package!";
}
echo "
<div class='plate shadow bg_light-gray book_plate'>
<div class='col_2-4'>
<h4>bk#" . $row['bookingid'] . " <span class='font_small'>$package_name</span></h4>
<p class='no_margin'>£ " . $row['total_amount'] . "</p>
</div>
<div class='col_2-4'>
<input onclick='show_invoice(" . $row['id'] . ");disable_bubbling(event);' type='button' class='btn btn_w-150 plate_btn float_right m-30-5 bg_default border_none border_radius-5 shadow show_details' value='Show Details'>
</div>
</div>
";
}
} else {
echo "<div class='error_container'><center><h1>Nothing Found!</h1><p>We Didn't Found Any Invoice Data!</p></center></div>";
}
}
?>
它应该只从会话中获取用户 ID 并从数据库中加载发票......