php文件不重定向

时间:2014-09-02 00:35:29

标签: php mysql redirect login

我正在尝试学习如何使用PHP和MySQL创建基本登录系统。我正在学习一门教程(http://www.phpeasystep.com/phptu/6.html),但它没有用。

我测试了它,上一页表单中的输入正常,但它没有重定向到下一页。这是代码。此外,MySQL连接正常,我只是隐藏密码。

<?php

    mysql_connect("localhost", "metacano_joe", "************") or die ("cannot   connect");

    mysql_select_db("metacano_metacanon") or die(mysql_error());

    $myusername=$_POST['myusername'];
    $mypassword=$_POST['mypassword'];

    $sql = "SELECT * FROM users WHERE username = '$myusername' and password = '$mypassword'";
    $result = mysql_query($sql);

    $count = mysql_num_rows($result);

    if($count==1){
        session_register("myusername");
        session_register("mypassword");
        header("location:login_success.php");
    }
    else {
        echo "Wrong Username or Password";
    }
?>

2 个答案:

答案 0 :(得分:4)

得爱不能发表评论

假设您的代码是正确的,有两种可能性,它不会重定向。

  • $ count!= 1. Aka用户名密码组合不退出。

  • 您在标题前输出了一些内容。

  

请记住,在任何实际输出之前必须调用header()   通过普通HTML标记,文件中的空行或PHP发送。   使用include或require读取代码是一个非常常见的错误,   函数或其他文件访问函数,并且有空格或空   调用header()之前输出的行。一样的问题   使用单个PHP / HTML文件时存在。

旁注。停止使用已弃用的函数。请。

另外,你得到任何错误输出吗?

答案 1 :(得分:0)

<?php

    mysql_connect("localhost", "metacano_joe", "************") or die ("cannot   connect");

    mysql_select_db("metacano_metacanon") or die(mysql_error());

    $myusername=$_POST['myusername'];
    $mypassword=$_POST['mypassword'];

    $sql = "SELECT * FROM users WHERE username = '$myusername' and password = '$mypassword'";
    $result = mysql_query($sql);

    $count = mysql_num_rows($result);

    if($count>1){
        session_start();
        $_SESSION['myusername'] = "myusername";
        $_SESSION['mypassword'] = "mypassword";
        header("location:login_success.php");
    }
    else {
        echo "Wrong Username or Password";
    }
?>

我编辑你的脚本,你可以使用$ _SESSION,它对初学者有好处