需要刷新Php会话以从angularjs获取最新的会话值

时间:2017-03-19 03:46:59

标签: javascript php jquery angularjs session

我在php中创建了一个会话,该会话的值来自angularjs。我创建了一个具有参数的函数。每次我点击一个按钮,该函数将执行,该函数的参数将发送到PHP。当我点击第一个按钮时我的问题是我的php页面将显示18的值并且它是正确的。现在,当我回到按钮并单击另一个然后重定向到php页面时,它不会回显新值20,它仍然回显最后一个值18

$scope.sendval = function(id){
    $http.post('page',{
        'param': id
     }).then(function(response){
         //some codes...
     });
};

page.php文件

session_start();
$data = json_decode(file_get_contents("php://input"));
$_SESSION['param'] = $data->param;

显示会话

session_start();

echo $_SESSION['param'];

我的问题是会话的价值保持不变。但是当我刷新页面时,它会更新。没有页面刷新怎么办? TIA!

我已经尝试过但仍然没有工作:

session_destroy($_SESSION['param']);
// and
unset($_SESSION['param']);
$_SESSION['param'];

1 个答案:

答案 0 :(得分:0)

您必须将未设置放在错误的位置。

<?php 
session_start();
$data = json_decode(file_get_contents("php://input"));
if (isset($_SESSION['param'])) {
    unset($_SESSION['param']);
    $_SESSION['param'] = $data->param; 
}
else{
    $_SESSION['param'] = $data->param; 
}
?>