Php 在javascript中设置会话

Php 在javascript中设置会话,php,javascript,html,Php,Javascript,Html,我想在javascript中设置会话。但该函数始终返回假值。请告诉我这个代码的错误 <script> function myFunction(){ var r=confirm("Would you like to add another item ?"); if (r==true) { alert('ok'); var varname = '<?php echo $_SESSION["redirect"]=1; ?>'; } if(r=

我想在javascript中设置会话。但该函数始终返回假值。请告诉我这个代码的错误

<script>
function myFunction(){

var r=confirm("Would you like to add another item ?");
if (r==true) {
    alert('ok');
    var varname = '<?php echo $_SESSION["redirect"]=1; ?>';     
 } 

 if(r==false)   {
     alert('bad');
    var varname = '<?php echo $_SESSION["redirect"]=2; ?>';
 }  
}
</script>

函数myFunction(){
var r=确认(“是否要添加其他项目?”);
如果(r==true){
警报(“正常”);
var varname='';
} 
如果(r==false){
警惕(“坏”);
var varname='';
}  
}

您不能在客户端上评估PHP。改为向服务器发出AJAX请求,设置会话变量。

Javascript在客户端运行,因此需要对服务器端脚本执行AJAX调用,以更改会话值

类似于:

function changeSession()
{
    $.ajax({
        url: /change_session.php?value=1&key=redirect,
        dataType:"html"
    });
}
在change_session.php中:

<?php $_SESSION[$_REQUEST['key']]=$_REQUEST['value'] ?>


您不能在内部设置会话Javascript@AlvinArulselvan如果是一个伪装成JS文件的PHP文件,他可以这样做。@Danny这仍然是在PHP中设置会话值,您只是更改了文件的扩展名。这与“在Javascript中设置会话”不同。会话和cookie之间的区别在于会话存储在服务器端。很显然,它们不能设置为客户端