我的PHP代码没有使用mysql验证数据

时间:2016-07-11 04:48:04

标签: php mysql html5

我有一个Php代码。它与服务器和数据库连接,但它不使用mysql数据库表验证我的表单数据。我有相同的执行代码,但以下不执行.........

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
session_start();
include_once 'dbconnect.php';

if(isset($_SESSION['user'])!="")
{
    header("Location: welcome.html");
}

if(isset($_POST['Submit']))
{
    $name = $_POST['loginName'];
    $upass = $_POST['loginPass'];
    $res=mysql_query("SELECT * FROM authen WHERE name='$name'");
    $row=mysql_fetch_array($res);

    if($row['passwrd']==$upass)
    {
        $_SESSION['user'] = $row['user_id'];
        header("Location: welcome.html");
    }
    else
    {
        ?>
        <script>alert('wrong details');</script>
        <?php
    }

}
?>
<html  xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <!-- JavaScript includes
        <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> -->
        <script src="assets/js/jquery-1.11.3.min.js"></script>
        <script src="assets/js/jquery-ui-1.10.4.js"></script>
        <script src="assets/js/script.js"></script>

        <meta charset="utf-8" />
        <link rel="stylesheet" href="assets/css/styles.css" />
        <link rel="stylesheet" href="assets/css/jquery.fancybox.css" />
    </head>
    <body>

        <div id="formContainer">
            <form id="login" method="post">
                <p id="lgnfrm">Login Form</p>
                <input type="text" name="loginName" id="loginName" placeholder="User Name" required />
                <input type="password" name="loginPass" id="loginPass" placeholder="password" required  />
                <input type="submit" name="Submit" id="sub" value="Login" />
            </form>
        </div>

        <footer>

        </footer>



    </body>
</html>

我按照指示修改了代码,但仍然得到相同的响应,即没有任何反应

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<?php
session_start();
include_once 'dbconnect.php';

if(isset($_SESSION['user']) && $_SESSION['user'] != "")
{
    header("Location: welcome.html");
}

if(isset($_POST['Submit']))
{
    $name = mysql_real_escape_string($_POST['loginName']);
    $upass = mysql_real_escape_string($_POST['loginPass']);
    $res=mysql_query("SELECT * FROM authen WHERE name='$name'");
    $row=mysql_fetch_array($res);

    if($row['passwrd']==md5($upass))
    {
        $_SESSION['user'] = $row['user_id'];
        header("Location: welcome.html");
    }
    else
    {
        ?>
        <script>alert('wrong details');</script>
        <?php
    }

}
?>
<html  xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <!-- JavaScript includes
        <script src="http://code.jquery.com/jquery-1.7.1.min.js"></script> -->
        <script src="assets/js/jquery-1.11.3.min.js"></script>
        <script src="assets/js/jquery-ui-1.10.4.js"></script>
        <script src="assets/js/script.js"></script>

        <meta charset="utf-8" />
        <link rel="stylesheet" href="assets/css/styles.css" />
        <link rel="stylesheet" href="assets/css/jquery.fancybox.css" />
    </head>
    <body>

        <div id="formContainer">
            <form id="login" method="post">
                <p id="lgnfrm">Login Form</p>
                <input type="text" name="loginName" id="loginName" placeholder="User Name" required />
                <input type="password" name="loginPass" id="loginPass" placeholder="password" required  />
                <input type="submit" name="Submit" id="sub" value="Login" />
            </form>
        </div>

        <footer>

        </footer>



    </body>
</html>

2 个答案:

答案 0 :(得分:0)

isset返回布尔值

你的代码应该是

if(isset($_SESSION['user']) && $_SESSION['user'] != "")
{
    header("Location: welcome.html");
    exit;
}

或者

if(!empty($_SESSION['user']))
{
    header("Location: welcome.html");
    exit;
}

答案 1 :(得分:-1)

在第一个代码中执行以下更改

if(isset($_SESSION['user']) && !empty($_SESSION['user']))
{
header("Location: welcome.html");
}

希望这有帮助!!,请评论以进一步查询