首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从URL中删除变量

问从URL中删除变量
EN

Stack Overflow用户
提问于 2016-01-04 17:28:15
回答 2查看 65关注 0票数 1

对于简单的登录系统,每当用户收到错误时,我都会将它们重定向到另一个页面(使用标题(Location:.))并将错误ID放在URL中,以便我知道要显示哪个错误。

login.php

​

代码语言:javascript
复制
<?php
if(isset($_GET[ 'status'])){
  if($_GET[ 'status']=='error' ){ 
?>
<p style='color:red;'>Incorrect Username/Password combination!</p>
<?php 
} }
?>

​

Checklog.php

代码语言:javascript
复制
<?php
include('../dbconnect.php');

$username =$_POST['form-username'];
$pwd =$_POST['form-password'];

$result = mysql_query("SELECT * FROM member WHERE email='$username' and password='$pwd'") or die ('Query failed:'.mysql_error());
//$admin=mysql_query("SELECT * FROM admin where user='$username' and code='$pwd'") or die ('Query failed:'.mysql_error());

if (mysql_num_rows($result)>0){
    session_start();
    $_SESSION['user']=$username;
//echo "hello $username";
    header("Location:../homepage.html");
}
/*else if (mysql_num_rows($admin)>0){
    session_start();
    $_SESSION['admin']=007;
    header("Location:add1.php");
}*/
else
{
    header("Location:login.php?status=error");
}

mysql_free_result($result);
mysql_close($con);
?>

​

在刷新错误消息时,是否有一种解决方案:如果用户刷新,我可以将用户重定向到原始的login.php而不需要错误消息。

EN

回答 2

Stack Overflow用户

发布于 2016-01-04 17:40:00

您可以在文档完全加载后使用javascript window.history.pushState来更改URL。这将改变地址栏中的URL,并在刷新时影响到它们被带到的地址。

或者,您可以将消息存储在$_SESSION中,并在消息显示后清除它。

票数 1
EN

Stack Overflow用户

发布于 2016-01-04 18:09:56

我同意亨利的回答。就个人而言,id使用$_SESSIONS,但正如您的问题是删除url参数一样,惟一的方法是js。

例如

代码语言:javascript
复制
history.pushState(null,null, window.location.href.split('?')[0]);

这是未经测试的,但应该在一行代码中执行您想要的操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34596561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档