在我的旧公司,我们有一个内部网站设置只允许你查看它,如果你的URL末尾有密码,我认为这是使用AJAX但我不太确定,即使它是我不确定如何编码。
URL看起来像这个internal.mysite / secretpanel?pass = superman,如果你输入除超人以外的任何东西,它会将你重定向到不正确的传递页面。
我的问题是如何检查密码的网址并重定向到“密码不正确”页面?
答案 0 :(得分:1)
答案 1 :(得分:1)
你所描述的听起来不像AJAX,也是一个非常不安全的系统(即使是内部系统也是如此)。
如果您使用的是PHP,则可能需要查看会话,而不是将密码作为URL中查询字符串的一部分传递。一个简单的实现是在登录页面上检查从表单发布的值,然后再将您重定向到包含您机密的页面。
<强>的login.php 强>
session_start();
if (isset($_POST['username']) && isset($_POST['password']))
{
// Check to see if the username and password is correct
if (user_is_valid_user($_POST['username'], $_POST['password'])
{
$_SESSION['logged_in'] = true;
// Redirect to your secret page
header("Location: http://mysite.com/secret.php");
}
}
else
{
// Display the login form
echo "<form method=\"post\" action=\"login.php\">";
echo " <input type=\"input\" name=\"username\" />";
echo " <input type=\"password\" name=\"password\" />";
echo " <input type=\"submit\" value=\"Login\" />";
echo "</form>";
}
<强> secret.php 强>
session_start();
if (!isset($_SESSION['logged_in']))
{
// Redirect to the login page since user is not logged in
header("Location: http://mysite.com/login.php");
}
// Display your secret content here
答案 2 :(得分:0)
使用$ _GET ['password'](或您希望用作“密码”变量名称的任何名称)。将其分配给变量或直接与服务器保存的变量进行比较。如果您不关心安全性,也不需要清理它,尽管ceejayoz是正确的,如果您想要安全性,请使用已发布的变量,这样任何人都不会“碰巧看下来并看到”网址密码。