1 html里, 把form放到table外面, 你这种写法有问题.
2 至于login.php, 多用exit();设置断点来调试吧,看问题出在哪.

解决方案 »

  1.   

    </form> 放到</table>外面
    其他没看出啥问题,
      

  2.   


    在php写法上,最好不用exit
    下面这几句很危险
    if($rows){ 
    header("location:index.html");//验证通过则到index.php
    exit; 
    }
    else{
    echo "faile";   //失败显示faile
    }
    //mysqli_free_result($res);
    mysql_close($db);
    }
      

  3.   

    这个时候你在每个变量被负值之前和之后都var_dump一下,看看如何变化的,就可以知道错在哪里了。
      

  4.   

    print_r $login;改print_r($login);看有没有值
      

  5.   

    login.php
    在php最前面die("123");可能根本没有跳到此页面
    查查有没有伪静态之类的
      

  6.   


      这种都是小问题,只不过需要你细心一点去调试,首先在login.php最开始输出一些信息看看:
    echo "到这里了吗?"; exit; 这样慢慢往下走,肯定能找到问题所在的。