我想知道什么,是否是一个PHP $ _SESSION变量可以在客户端进行更改。例如,如果我做$_SESSION['username'] = $username;
有人能以某种方式改变我的$_SESSION['username']
变量的值吗?
回答
PHP是一种服务器端编程语言,$ _SESSION超全局只能在服务器上直接访问。通过'正常的'php会话,SESSON超全局中包含的数据将通过cookie在浏览器和服务器之间来回传递。所以从技术上讲,可以通过修改cookie来在Web浏览器中用Javascript修改会话。
但请注意,任何尝试这样做的尝试都可能是一个糟糕的想法,而且很有可能是一种更简单的方法来完成您想要做的任何事情。
编辑:这个问题我问可能是使用你 Codeigniter/PHP sessions security question
修改cookie不会让你改变会话超全球的值,但会让你使用另一个会话(假设你猜对了一个正确的会话ID)。 – Jim
我的担心是**用户**是否能够更改此变量,以及我如何保护它。 –
这是可行的,不简单。我试图回答这个问题:是否有可能。这是个好主意吗?号码 –
不完全是,但您可以使用AJAX进行模拟。只需编写一个更改值的php文件,然后从AJAX调用它,只需执行它并更改该值即可。
希望这可以帮助你。
我已经很熟悉了,因为我已经使用它很长一段时间了,但是,我的担心是用户是否能够更改此变量... –
好的,我认为这是我这样做的方式... – elvenbyte
的SESSION超全局中的内容不能改变。它位于服务器上,客户端无法访问它。
但是,会话ID被传递给客户端,以便当客户端与服务器联系时,服务器知道要使用哪个会话。 该值可能会更改(请参阅Calums回答以防止此错误有关信息,请参阅http://php.net/manual/en/session.security.php)。这将允许用户使用某人elses会话(但不会更改会话的值)。
- 1. 是否可以修改$ _SESSION变量?
- 2. PHP客户端可以设置$ _SESSION变量吗?
- 3. 是否可以在Rackspace客户端帐户上更改ft_min_word_len?
- 4. 是否可以更改JavaScript客户端时钟?
- 5. ASP.NET CustomValidator - 是否可以在客户端更改ClientValidationFunction?
- 6. 是否可以更改HTTP客户端超时期限(cpp-netlib)?
- 7. 用户可以访问$ _SESSION变量吗?
- 8. 是否可以使用客户端smtp?
- 9. 是$ _SESSION []变量可利用
- 10. jQuery Datatables是否可以改变服务器返回的客户端查看值?
- 11. 是否可以连接到PHP $ _SESSION变量?
- 12. 是否可以更改GMail电子邮件客户端上的签名?
- 13. 是否可以在网页上更改运行客户端的脚本?
- 14. 客户端是否可以决定是否创建HttpContext?
- 15. 是否无法为客户端永久更改客户端的Web代码?
- 16. 服务器排队的客户端数量以及客户端是否排队
- 17. 是否可以更改npm用户?
- 18. 更改PrimeFaces对话是在客户端
- 19. 是否可以使用GIT来管理客户端许可证?
- 20. DNN客户端变量
- 21. 如何从Meteor shell中更改客户端变量的值?
- 22. 更改JavaScript的变量客户端在Firebug或Chrome开发者
- 23. 在Java中,远程对象是否也可以是客户端?
- 24. Square的改造客户端。可变数量的参数
- 25. ViewState和客户端更改
- 26. 在客户端更改radnumerictextbox
- 27. 是否可以通过iframe更改javascript变量?
- 28. 是否可以在Prolog中更改已初始化的变量?
- 29. 是否可以在运行时更改AngularJS变量的类型?
- 30. PHP:是否可以动态更改变量的名称?
php - 服务器端脚本 – Subdigger