当我通过下拉框更改选项时,我正在尝试更新/创建会话变量。 T该值存储在javascript函数中。可以告诉我如何在不使用AJAX请求的情况下将此变量传递给我的PHP会话变量。 感谢
答案 0 :(得分:3)
没有ajax?确定,
var img = new Image();
img.src = "script.php?myVal=" + encodeURIComponent(theValueToPass);
浏览器会尝试通过请求网址来加载图片。显然这将是一个愚蠢的差事,但你的PHP脚本将被执行,并在PHP的$_GET['myVal']
答案 1 :(得分:2)
嗯,我想,你可以通过在你的javascript中添加一个cookie值来实现,并在下一页REFERESH上用php更新你的会话,并参考那个cookie值。
我没有尝试过,我认为我们无法通过javascript从客户端更新会话。
由于
答案 2 :(得分:0)
你真的不能。
会话数据随服务器而改变,而Javascript只能改变客户端数据(如cookie)。 但是,您可以通过创建一个新的PHP页面来创建解决方案,该页面在GET / POST请求中传递变量,然后更改会话。
答案 3 :(得分:0)
我能想到的唯一选择是使用javascript在URL中设置一个参数,稍后您可以使用PHP解释该参数,但这将是在另一个页面加载之后。
http://www.mine.com/index.html?paramter=variable&anotherparam=anothervariable
请参阅this post了解实现此方法的方法
编辑:我不认为这会让你在第二次思考后得到什么,但我会在案例中留下答案
答案 4 :(得分:0)
PHP会话变量驻留在服务器上:
http://www.w3schools.com/PHP/php_sessions.asp
但JavaScript值仅在客户端。
应该有一种机制将其发送到服务器,如果不使用ajax:尝试将此值保存到隐藏字段中,然后使用通常的get / post发送它。