1. 论坛系统升级为Xenforo,欢迎大家测试!
    排除公告

新学php,请前辈帮忙查错

本帖由 bbbear2006-03-26 发布。版面名称:后端开发

  1. bbbear

    bbbear New Member

    注册:
    2006-03-26
    帖子:
    3
    赞:
    0
    $sql = "SELECT * FROM `admin_user`";

    $conn = mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
    $result = mysql_db_query($mysql_database,$sql,$conn);
    $row = mysql_fetch_row($result);

    $username=$_POST["username"];
    $password=$_POST["password"];

    if($username == $row[1] and $password == $row[2])
    {
    session_start();
    $_SESSION["admin"]="$row[1]";
    echo "<script>location.href='main.php';</script>";
    }
    else
    {
    echo ("<script type='text/javascript'> alert('用户名或密码不对');history.go(-1);</script>");
    }
     
  2. bbbear

    bbbear New Member

    注册:
    2006-03-26
    帖子:
    3
    赞:
    0
    我用print_r($row),能印出$row[1]和$row[2],不知道上面哪里出错了,提示我用户名或密码不对,那就是if()那边错了,请前辈指正,谢谢。。。
     
  3. Function

    Function New Member

    注册:
    2006-03-24
    帖子:
    3,884
    赞:
    5
    你检查过 $username 和 $password 的内容吗?

    检查 If 语句的结果,很简单的调试方式就是将其中的逻辑语句的结果输出。
     
  4. wm_chief

    wm_chief New Member

    注册:
    2005-09-05
    帖子:
    17,890
    赞:
    46
    输出数据库的记录与提交过来的数据是否相同
     
  5. bbbear

    bbbear New Member

    注册:
    2006-03-26
    帖子:
    3
    赞:
    0
    找出根本原因了,不是程式的问题,是我session设置有问题,重新安装了php就没有这个提示了,不过新问题又来了,我用print_r($_session);能印出来,可是到了跳转页面,我再print_r($_session);就印不出来了
     
  6. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    水平有限,将就看看。

    PHP:
    <?php
    $servername
    ="localhost";  //主机名
    $sqlservername="root"//mysql数据库用户名
    $sqlserverpws=""//mysql数据库密码
    $sqlname="test"//数据库名

    if(empty($_POST["username"])){
    echo (
    "<script type='text/javascript'> alert('用户名怎么能是空的呢!');history.go(-1);</script>");
    }
    if(empty(
    $_POST["password"])){
    echo (
    "<script type='text/javascript'> alert('密码也不能是空的!');history.go(-1);</script>");
    }
    $username$_POST["username"]; //用户名已经记录了
    $password$_POST["password"]; //密码已经记录了
    $db=mysql_connect($servername,$sqlservername,$sqlserverpws);
    mysql_select_db($sqlname,$db);
    $sql="select * from `admin_user` where username='$username' and password='$password'";
    $result=mysql_fetch_array(mysql_query($sql));
    if(!
    $result){
    echo (
    "<script type='text/javascript'> alert('用户名或密码不正确!');history.go(-1);</script>");
    mysql_close();
    exit;
    }
    session_start();
    $_SESSION["name"]="$username";
    echo 
    "<script>location.href='admin.php';</script>";//跳转
    ?>
     
  7. wm_chief

    wm_chief New Member

    注册:
    2005-09-05
    帖子:
    17,890
    赞:
    46
    session_register('admin');
     
  8. 小叶

    小叶 New Member

    注册:
    2005-09-04
    帖子:
    17,941
    赞:
    33
    是哦,忘记了。
     
  9. mj_wu

    mj_wu New Member

    注册:
    2006-03-26
    帖子:
    71
    赞:
    0
    我什么时候也会自己写哦
     
  10. Tameway

    Tameway New Member

    注册:
    2005-09-06
    帖子:
    1,286
    赞:
    8
    不懂PHP,帮顶下