我想为登录用户编写一些代码,当用户还没有在数据库中注册时,将其发送到"register.php"页面。我使用了标题("Location:register.php")代码,但当我刷新页面时,没有任何点击注册按钮,它会自动转到该页面,登录表单没有显示!
这是我的"login.php"代码:
<?php
require 'core_inc.php';
require 'connect_inc.php';
if(isset($_POST['txtusername']) && isset($_POST['txtpassword']))
{
if(!empty($_POST['txtusername']) && !empty($_POST['txtpassword']))
{
$username = trim($_POST['txtusername']);
$password = trim($_POST['txtpassword']);
$hash_passwword = md5($password);
$query = "select `id` from `for_login` where `username` = '$username' and `password` = '$hash_passwword'";
if($query_run = mysql_query($query))
{
$query_num_rows = mysql_num_rows($query_run);
if($query_num_rows == 0){
echo 'invalid username or password! if you have not registered yet please do it!';
}
else if($query_num_rows == 1)
{
$_SESSION['username'] = $username;
header('Location: index.php');
}
}
}
else 'please fill the blanks';
}
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>Untitled Document</title>
</head>
<body>
<form action="<?php echo $current_file; ?>" method="post">
please enter your username and password to login. if you already not registered please click to register button! :) <br><br>
username:<br>
<input type="text" name="txtusername"><br>
password:<br>
<input type="password" name="txtpassword"><br><br>
<input type="submit" value="login">
<input type="submit" value="register" onClick="<?php header('Location: register.php'); ?>" name="btnregister" >
</form>
</body>
</html>
"core_inc.php"在这里:
<?php
@session_start();
$current_file = $_SERVER['SCRIPT_NAME'];
$http_referer = @$_SERVER['HTTP_REFERER'];
?>
我知道"connect_inc.php"没有问题,它成功地连接到了数据库。我试着删除其他不相关的代码,比如",但无济于事。如有任何帮助,我们将不胜感激。
尝试使用此。。。
<a href="register.php">Register</a>
而非
<input type="submit" value="register" onClick="<?php header('Location: register.php'); ?>" name="btnregister">`
onClick
需要一个javascript函数,而不是PHP。尝试
window.location='register.php'
所以在这种情况下:
<input type="submit" value="register" onClick="window.location='register.php'" name="btnregister">
从提交字段中完全删除onclick函数,添加
header('Location:register.php');
到您的
if($query_num_rows == 0){
echo 'invalid username or password! if you have not registered yet please do it!';
header('Location:register.php');
}