是否有任何方法来传递变量而不是在PHP中获取和发布?

时间:2016-07-21 13:54:17

标签: php

我只想知道除了get和post方法之外还有其他任何方法可以将变量从一个页面传递到另一个页面。我知道有会话方法,但我不想那样。 而我的另一个疑问是会议安全与否。其中许多人认为会话不安全。它可靠与否?何时使用会话而何时不使用? login1.php

<!doctype html>
<html>
<body>
<form name="login_form"  method="post"  id="frmLoginAdmin"           action="login2.php">
<input type="hidden" value="abcd" name="abcda">
<input  type="submit">  
</form>
</body>
</html>

login2.php

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>

<body onLoad="auto();">
<form action="login1.php" method="POST" name="myform">
<input type="hidden" value="<?php echo $_POST['abcda']; ?>" name="you know">
<input type="hidden" value="somevalue" name="what todo here">
<input type="hidden" value="somevalue" name="so do it">
<input type="hidden" value="somevalue" name="ok">
</form>
</body>
</html>
<script>
function auto() {
  document.myform.submit();
}
</script>

这是条件。首先,我使用get方法将值传递回login1.php.But现在我不希望我的用户看到哪些变量通过。所以我使用上面的方法,但它首先重定向到login2.php,它向用户显示一小部分秒的空页然后只重定向到login1.php。这是我的问题,这就是为什么我要求任何其他替代方法传递变量

3 个答案:

答案 0 :(得分:0)

HTTP没有其他方法(除了HTTP允许的内容,如前所述)。

但是还有许多其他方法可以将数据从服务器传输到服务器,如FTP或建立直接套接字连接。

请注意,您需要安装/配置其他方式,并且可能不仅在服务器上(通过防火墙进行通信,您还需要允许使用的端口)

答案 1 :(得分:0)

您可以使用加密的Cookie:https://packagist.org/packages/illuminate/cookie来存储编码密钥。基于该解码密钥,您可以保存并从数据库+ Memcache层读取

答案 2 :(得分:-1)

会话:

会话存储在服务器上,用户(客户端)无法访问。它用于存储整个站点的信息,例如登录会话。它可以用于在服务器端存储信息,并在不同的PHP脚本之间传递

请注意,session会为PHPSESSID之类的标识创建一个会话cookie,这可能会显示所使用的服务器端脚本语言,大多数人都不愿透露这些语言。为了不透露,我们可以从php更改此cookie名称。此外,通过窃取该cookie,有人可能会劫持该会话。因此,应通过验证来正确使用会话。如果会话验证完成,您可以防止劫持并安全使用它。

安全使用:

要安全地使用会话,您可以关注此博客,该博客显示如何验证会话并防止被劫持。

  

http://blog.teamtreehouse.com/how-to-create-bulletproof-sessions