Php 如何在会话中存储整个$u POST变量
我有下拉选择,当我点击提交按钮时,它会根据下拉列表的值显示记录。它工作正常,但当我刷新app_list2.php时,它什么也不显示。我想保留app_list2.php中显示的记录。如何在会话中存储所有$\u POST值Php 如何在会话中存储整个$u POST变量,php,jquery,mysql,mysqli,Php,Jquery,Mysql,Mysqli,我有下拉选择,当我点击提交按钮时,它会根据下拉列表的值显示记录。它工作正常,但当我刷新app_list2.php时,它什么也不显示。我想保留app_list2.php中显示的记录。如何在会话中存储所有$\u POST值 <?php $mysqli = new mysqli("localhost", "root", "", "app"); if(isset($_POST['submit'])){ $drop = $_POST['drop_1']; $t
<?php
$mysqli = new mysqli("localhost", "root", "", "app");
if(isset($_POST['submit'])){
$drop = $_POST['drop_1'];
$tier_two = $_POST['tier_two'];
$where = "WHERE app_cn='$drop' AND app_plan_no='$tier_two'";
$result1 = $mysqli->query("
SELECT *, SUM(unit_cost*quantity) AS total_amount, SUM(unit_cost*1st_quarter) AS 1st_quarter_total, SUM(unit_cost*2nd_quarter) AS 2nd_quarter_total, SUM(unit_cost*3rd_quarter) AS 3rd_quarter_total,
SUM(unit_cost*4th_quarter) AS 4th_quarter_total, SUM((quantity)-(1st_q_qty_del+2nd_q_qty_del+3rd_q_qty_del+4th_q_qty_del)) AS balance
FROM app
$where
GROUP BY counter ORDER BY counter
");
?>
<?php
echo'<table id="tfhover" cellspacing="0" class="tablesorter" style="text-transform:uppercase;">
<thead>
<tr>
<th>Item</th>
<th>Description</th>
<th>Fund Source</th>
<th>Unit</th>
<th>Unit Cost</th>
</tr>
</thead>';
echo'<tbody>';
$i=1;
while($row = $result1->fetch_assoc()){
if($row['app_cn'] != '')
{
echo'<tr>
<td>'.$row['item_name'].'</td>
<td>'.$row['item_description'].'</td>
<td>'.$row['fund_source'].'</td>
<td>'.$row['unit'].'</td>
<td>'.number_format($row['unit_cost'], 2, '.', ',').'</td>
</tr>';
}
}
echo "</tbody></table>";
}
?>
试试这个代码
<?php
ob_start();
session_start();
$mysqli = new mysqli("localhost", "root", "", "app");
if(isset($_POST['submit'])){
//unset the session value
$_SESSION['content'] = '';
$drop = $_POST['drop_1'];
$tier_two = $_POST['tier_two'];
$where = "WHERE app_cn='$drop' AND app_plan_no='$tier_two'";
$result1 = $mysqli->query("
SELECT *, SUM(unit_cost*quantity) AS total_amount, SUM(unit_cost*1st_quarter) AS 1st_quarter_total, SUM(unit_cost*2nd_quarter) AS 2nd_quarter_total, SUM(unit_cost*3rd_quarter) AS 3rd_quarter_total,
SUM(unit_cost*4th_quarter) AS 4th_quarter_total, SUM((quantity)-(1st_q_qty_del+2nd_q_qty_del+3rd_q_qty_del+4th_q_qty_del)) AS balance
FROM app
$where
GROUP BY counter ORDER BY counter
");
?>
<?php
echo'<table id="tfhover" cellspacing="0" class="tablesorter" style="text-transform:uppercase;">
<thead>
<tr>
<th>Item</th>
<th>Description</th>
<th>Fund Source</th>
<th>Unit</th>
<th>Unit Cost</th>
</tr>
</thead>';
echo'<tbody>';
$i=1;
while($row = $result1->fetch_assoc()){
if($row['app_cn'] != '')
{
echo'<tr>
<td>'.$row['item_name'].'</td>
<td>'.$row['item_description'].'</td>
<td>'.$row['fund_source'].'</td>
<td>'.$row['unit'].'</td>
<td>'.number_format($row['unit_cost'], 2, '.', ',').'</td>
</tr>';
}
}
echo "</tbody></table>";
$sPageContent = ob_get_clean();
$_SESSION['content'] = $sPageContent;
}else{
if (isset($_SESSION['content'])){
echo $_SESSION['content'];
}
}
?>
检查错误,似乎是php错误。并清理您的查询字段没有错误,我想是因为它没有确定记录的id吗?这是因为在刷新时,您将失去对已发布值的跟踪,所以不会有任何结果appear@leobali是的,即使我刷新了页面,我怎样才能得到发布的值呢?在尝试此代码之前,将所有的发布值存储到sessiontry以清除缓存,并在刷新之前调试第一次显示的会话值..页面内容是否存储在值中?抱歉,响应太晚,我已经尝试了此代码。当我点击app_list.php中的提交按钮时,它不会显示任何内容。但当我刷新页面时,它会显示记录。为什么呢?