如何更改会话的值

时间:2014-01-10 06:21:11

标签: php session

app.php从另一个页面获取帖子值。并且该值用于查询目的。该post值用于编辑app.php中的多个值。我再次将多个值发布到edit.php以更新app.php中显示的记录。我想要的是当我使用<meta http-equiv="refresh" content="0;app.php" /><script type="text/javascript">window.history.go(-1);</script>回到app.php时,app.php中的值应该从edit.php获取新值或更新值。我不善于使用会话。请帮忙吗?

app.php

$mysqli = new mysqli("localhost", "root", "", "app");
ob_start();
session_start()

<form name="myform" method="post"  action="edit.php"/>
if (isset($_POST['submit'])) {

    //unset the session value 
    $_SESSION['content'] = '';

    $drop     = $_POST['drop_1'];
    $tier_two = $_POST['tier_two'];

    $where = "WHERE a.app_cn='$drop' AND a.app_plan_no='$tier_two'";

    $result1 = $mysqli->query(" query ");

<table>
while ($row = $result1->fetch_assoc()) {
<td><input name="checkbox[]" type="checkbox" id="checkbox[]" value="' . $row['id'] . '"'.($row['pr'] == ""?"disabled ":"").' style="cursor:pointer;" class="checkbox"></td>
}
</table>

$sPageContent        = ob_get_clean();
    $_SESSION['content'] = $sPageContent;
        echo $_SESSION['content'];
} else {
    if (isset($_SESSION['content'])) {
        echo $_SESSION['content'];
    }
}
</form>

Edit.php

<?php
$mysqli = new mysqli("localhost", "root", "", "app");
if (isset($_POST['submit'])) {
$counter=$_POST['counter'];
$pr=$_POST['pr'];
$pr_qty=$_POST['pr_qty'];
$N = count($counter);
for($i=0; $i < $N; $i++)
{
    $result = $mysqli->query("UPDATE purchase_request SET pr='$pr[$i]', total_quantity='$pr_qty[$i]' where counter='$counter[$i]'");
}
    echo'<meta http-equiv="refresh" content="0;app.php" />';
}

?>

<form class="form-horizontal" action="" method="post">    
<?php
$id=$_POST['checkbox'];
$N = count($id);
for($i=0; $i < $N; $i++)
{
    $result1 = $mysqli->query("
SELECT a.item_name, a.item_description, a.counter, b.counter, b.pr, b.total_quantity
FROM app a
LEFT OUTER JOIN purchase_request b
ON a.counter=b.counter
WHERE a.counter='$id[$i]'
    ");
    while ($row = $result1->fetch_assoc())
      { ?>
<input name="item_name[]" class="textbox" type="text" value="<?php echo $row['item_name'] ?>"/>
<input name="item_description[]" class="textbox" type="text" value="<?php echo $row['item_description'] ?>"/>
<input name="pr_qty[]" id="pr_qty[]"  class="textbox tb1" type="text" value="<?php echo $row['total_quantity']; ?>" />
<input name="pr[]" class="textbox" type="text" value="<?php echo $row['pr'] ?>" />
?>
<input name="submit" type="submit" id="sbtBtn" value="Update">
</form>

1 个答案:

答案 0 :(得分:0)

使用header('Location: app.php')代替<meta http-equiv="refresh" content="0;app.php" />

如果您使用javascript返回页面,它可能会保留以前的数据。这是因为我们的浏览器有缓存。

你可以使用 <META HTTP-EQUIV="CACHE-CONTROL" CONTENT="NO-CACHE"><META HTTP-EQUIV="EXPIRES" CONTENT="Mon, 22 Jul 2002 11:12:01 GMT">  禁用缓存

相关问题