php - 简单的PHP/MySQL表单仅刷新

标签 php mysql login login-system

我只是按照指南使用PHP和MySQL设置了一个非常简单的登录系统,并且我的代码是视频的精确克隆,但是当我单击“提交”按钮时,无论用户名/密码框中的值是多少,它都将刷新页面。 。该指南来自2010年,但我认为它会起作用,因为该系统是如此简单。

XAMPP INFO:

表名是“用户”
数据库名称为“快速”

<?php

$host = "localhost";
$user = "root";
$pass = "";
$db = "fast";

mysql_connect($host, $user, $pass);
mysql_select_db($db);

    if (isset ($_POST['username'])) {
        $username = $_POST['username'];
        $password = $_POST['password'];
    $sql = "SELECT * FROM users WHERE username='".$username."' AND     password='".$password."' LIMIT 1";
    $res = mysql_query($sql);
    if (mysqli_num_rows($res) == 1) {
        echo "You have succesfully logged in.";
        exit();
    } else {
        echo "Invalid login information. Please return the previous page";
        exit();
    }
}

?>



<!DOCTYPE html>
<html>
<head>
    <title>Login</title>
</head>

<body>
    <form method="POST" action="login.php">
        Username: <input type="text" name="username"></input>
        Password: <input type="password" name="password"></input>
        <input type="submit" name="submit" value="Log In"></input>
    </form>
</body>
</html>

最佳答案

编辑版本

制作一个单独的connect.php文件,并将其包含在您的login.php文件中,同时我已经在您的login.php文件中更新了isset条件。如果单击了提交按钮,则验证条件有效

(在PHP 5.5版之后不建议使用mysql,并使用pdo或mysqli)

connect.php

<?php

$host = "localhost";
$user = "root";
$pass = "";
$db = "fast";

mysql_connect($host, $user, $pass);
mysql_select_db($db);
?>


login.php

 <?php
        require('connect.php');
        if (isset ($_POST['submit'])) {
            $username = $_POST['username'];
            $password = $_POST['password'];
        $sql = "SELECT * FROM users WHERE username='".$username."' AND     password='".$password."' LIMIT 1";
        $res = mysql_query($sql);
        if ($res) {
            echo "You have succesfully logged in.";
            exit();
        } else {
            echo "Invalid login information. Please return the previous page";
            exit();
        }
    }

    ?>
<!DOCTYPE html>
<html>
<head>
    <title>Login</title>
</head>

<body>
    <form method="POST" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
        Username: <input type="text" name="username"></input>
        Password: <input type="password" name="password"></input>
        <input type="submit" name="submit" value="Log In"></input>
    </form>
</body>
</html>

关于php - 简单的PHP/MySQL表单仅刷新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38867530/

相关文章:

php - 显示数据库中 JOIN 子句中的所有记录

php - 如何使用一个插入语句插入多个项目,同时检测唯一列是否具有重复值?

login - 无法连接到 genymotion 并收到代理错误

Symfony 2 "Your session has timed out or you have disabled cookies"

iphone - 登录Google时显示YouTube channel 列表

php - SQL左连接数组部分为空

PHP 安全检查表(注入(inject)、 session 等)

php - 在循环中绘制空的虚拟列

java - 如何从具有 IN 和 OUT 参数的 Hibernate 调用存储过程

PHP 脚本在通过命令行执行时不会工作,但在从浏览器执行时工作正常