Php 登录表单:不重定向到允许的页面
首先,英语不是我的母语,而且已经很晚了,我从中午开始搜索。所以,请宽容一点 我有一个简单的登录表单问题。嗯,这个登录表单很简单,我想我不会有任何问题 我所做的: 因此,我创建了一个包含登录表单的页面index.php。发送时,脚本验证字段是否已填充,连接到数据库,检查数据库中的数据,如果密码和登录正确,则启动$u会话并填充$u会话['login]。然后,它通过会话启动和检查$会话['login'],将用户重定向到包含后台内容的页面。 理论上,这是可行的 但是没有 问题是什么: 当我在登录表单中输入信息并发送时,同一页面会重新加载,并且不会将我重定向到backoffice页面。零误差发射 我的代码: index.phpPhp 登录表单:不重定向到允许的页面,php,forms,login,Php,Forms,Login,首先,英语不是我的母语,而且已经很晚了,我从中午开始搜索。所以,请宽容一点 我有一个简单的登录表单问题。嗯,这个登录表单很简单,我想我不会有任何问题 我所做的: 因此,我创建了一个包含登录表单的页面index.php。发送时,脚本验证字段是否已填充,连接到数据库,检查数据库中的数据,如果密码和登录正确,则启动$u会话并填充$u会话['login]。然后,它通过会话启动和检查$会话['login'],将用户重定向到包含后台内容的页面。 理论上,这是可行的 但是没有 问题是什么: 当我在登录表单中输
...
认证
尝试关闭输入标记。而不是
<input type="text" required="required" name="login" id="login">
<label for="mdp" class="iconic comment"> Password <span class="required">* </span>
</label>
<input type="password" required="required" name="mdp" id="mdp">
<input type="submit" name="Submit" value="Submit">
密码*
写
密码*
另外,检查是否正在使用标题重定向输入if
。前面不能有任何html输出,包括空白。url通常应该是绝对的,而不是相对的,所以添加http://...
Hi@Marko,谢谢你的时间和回答,我确实关闭了我的输入标签(即使不关闭它们是用HTML5编写的新方式),我选中了:如果
:输入。我检查了我是否没有用空格写include,或者我是否在标题前调用了Html:没有…所以,我不知道为什么我的文件没有被lanched。。。但是谢谢你的建议!你尝试过绝对url吗?是的。走对了路。不起作用。它可能来自我的主机,不允许标题重定向吗?嗯,我不知道我做了什么(尝试了一些小的修改,比如首先调用login()函数(之前在我的文件中,有一些注释代码),所以可能这就是它现在工作的原因。无论如何,感谢您的时间@Marko!
<?php
include_once('conf/connec.php');
$connect_db=connect();
function login() {
if(isset($_POST['Submit'])) {
if(!empty($_POST['login']) && !empty($_POST['mdp'])) {
$query = mysql_query("SELECT mdp, login FROM 2K13_id WHERE login = '".md5($_POST['login'])."'");
if(mysql_num_rows($query) == 1) {
$user = mysql_fetch_object($query);
// On vérifie la concordance des mots de passe (en md5)
if(md5($_POST['mdp']) == $user->mdp) {
session_start();
$_SESSION['login'] = $user->login;
header("Location:backoffice.php");
} else {
echo 'Mauvais mot de passe pour cet utilisateur.';
}
} else {
echo 'Ce login n\'existe pas dans notre base.';
}
} else {
echo 'Vous devez remplir tous les champs !';
}
}
}
?>
<?php
session_start();
if(!isset($_SESSION['login'])) {
die("NO PASARAN");
}
echo '<script>document.location = "backoffice.php"</script>';
<input type="text" required="required" name="login" id="login">
<label for="mdp" class="iconic comment"> Password <span class="required">* </span>
</label>
<input type="password" required="required" name="mdp" id="mdp">
<input type="submit" name="Submit" value="Submit">
<input type="text" required="required" name="login" id="login" />
<label for="mdp" class="iconic comment"> Password <span class="required">* </span>
</label>
<input type="password" required="required" name="mdp" id="mdp" />
<input type="submit" name="Submit" value="Submit" />