Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript中的PHP会话变量_Php_Javascript_Session_Passwords - Fatal编程技术网

JavaScript中的PHP会话变量

JavaScript中的PHP会话变量,php,javascript,session,passwords,Php,Javascript,Session,Passwords,我怎么能在这里输入php,这样当它有一个正确的密码时,它会将信息存储为cookie,然后允许删除它 <SCRIPT language="JavaScript"> <!--hide var password; var pass1="password"; password=prompt('Please enter your password to view this page!',' '); if (password==pass1

我怎么能在这里输入php,这样当它有一个正确的密码时,它会将信息存储为cookie,然后允许删除它

  <SCRIPT language="JavaScript">
    <!--hide

    var password;

    var pass1="password";

    password=prompt('Please enter your password to view this page!',' ');

    if (password==pass1){
      alert('Password Correct! Click OK to enter!');}
    else
       {
        window.location="//Some Location//";
        }

    //-->
    </SCRIPT>

如果足够简单(根据标题)

var varname='';
但是你必须认真考虑你的逻辑。您正在检查javascript上的身份验证,这将是web应用程序中最愚蠢的动作

密码是完全公开的,任何人都可以查看密码或整体关闭javascript,那么您的整个网站就会变得容易受到攻击



我的建议是向PHP页面发出AJAX请求,该页面将分别检查和验证密码,然后将消息返回给Javascript。

这是完全错误的:

  • 您将在页面的源代码和浏览器历史记录中显示密码,供任何人查看。因此,即使他们没有密码,他们也可以检查源代码以获取密码
  • 您需要保护当前页面服务器端,因为任何禁用javascript的人现在都可以打开它。一种简单的方法是处理登录服务器端,并为成功登录的用户设置特定的会话变量。然后,您可以在页面顶部检查会话变量是否已设置

您不需要PHP创建cookie,您可以通过JavaScript创建cookie。但您确实需要PHP进行身份验证。像那样使用JavaScript,你的网站将在几秒钟内被一个5岁的孩子入侵。@bfavaretto 4岁。“我认识一些聪明的孩子。”杰伦,我希望我的回答是建设性的enough@Starx是的,就研究工作而言,我猜否决票也是有道理的……我怎么说呢,它的$会话[“变量名称”]==pass1@user1345650,你不能这样做,php在服务器上运行,javascript在客户端机器上运行//code>//某些位置//似乎是“拒绝访问”页面,而不是最终目的地(我假设是当前页面,只需禁用javascript即可访问)。
var varname = '<?php echo $_SESSION["variable_name"]; ?>';