繁体   English   中英

隐藏在URL中获取变量?

[英]Hiding get variables in url?

我想在网址中隐藏获取变量

我要这个

"dem/?p=user"

而不是像我过去的那样

dem/?p=user&act=stored
dem/?p=user&act=changed
dem/?p=user&act=deleted

伴侣请帮帮我。 提前谢谢。

如果要隐藏GET变量或值,则不应使用GET GET方法中,数据将始终作为url的一部分发送 如果要从用户“隐藏”数据(或不显示在URL中),则应使用POST方法。

显然,由于您没有花时间告诉我们页面结构如何以及如何存储值,我只能猜测。

服务器端

如果将数据存储在重定向后的页面上,则可以将其存储在$_SESSION

session_start();
if (isset($_SESSION['message']))
{
    $_SESSION['message'] = "succes";
}

然后在您的确认页面上

session_start();
echo $_SESSION['message'];

客户端

您可以创建隐藏的输入并将其添加到表单中,将表单设置$_POST在表单操作页面上发布并处理这些$_POST值。

var x = document.createElement("INPUT");
x.setAttribute("type", "hidden");
x.setAttribute("name", "message");
form.appendChild(x);

然后在您的确认页面上

if (isset($_POST['message']))
{
    echo $_POST['message'];
}

您可以使用以下任何一种:

  • 使用POST方法而不是GET
  • 通过POST或GET方法使用Ajax
  • 如果您确实希望发送安全方式,请使用加密和解密,即dem /?p = ENCRYPTED_STRING 这里ENCRYPTED_STRING将具有所有GET数据

修改.htaccess文件以使短URL符合您的期望

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM