【问题标题】:Get another value from MySQL database on row从 MySQL 数据库的行中获取另一个值
【发布时间】:2016-10-18 05:45:48
【问题描述】:

我已经制作了一个简单的登录和注册系统(http://dak.esy.es/login/),并且想从 MySQL 数据库的同一行中检索其他信息。目前只保存用户名($_SESSION['username']),这就是登录页面输入的内容。在数据库上,我要保存的数据是idfullnameemail——最好与用户名($_SESSION['(name here)'])格式相同。我已经有一个文件可以连接到名为db.php 的数据库。如果有人能提供代码,我会非常高兴。 我的login.php 页面上的代码是:

  <?php
require('db.php');
session_start();
// If form submitted, insert values into the database.
if (isset($_POST['username'])){
    $username = $_POST['username'];
    $password = $_POST['password'];
    $username = stripslashes($username);
    $username = mysql_real_escape_string($username);
    $password = stripslashes($password);
    $password = mysql_real_escape_string($password);
//Checking is user existing in the database or not
    $query = "SELECT * FROM `users` WHERE username='$username' and password='".md5($password)."'";
    $result = mysql_query($query) or die(mysql_error());
    $rows = mysql_num_rows($result);

    if($rows==1){
        $_SESSION['username'] = $username;
        header("Location: ./index.php"); // Redirect user to index.php
    }
        else{
            echo "<div class='form'><br/><h3>Username or password incorrect.</h3><br/>Click here to <a href='login.php'>try again</a></div>";
        }
}
?>

非常感谢。

【问题讨论】:

  • 您的查询必须选择您想要的所有属性,您需要为所有指定 * 或设置其名称
  • @ReneLimon 我不明白你的意思。能否提供一个代码 sn-p?

标签: php html mysql database login


【解决方案1】:

目前尚不清楚要求是什么:但我希望,您希望 db 行中的每个值都作为会话.. 希望你有 session: `$_SESSION['username'] after login;

    $conn = mysqli_connect($servername, $username, $password);

    // Check connection
    if (!$conn) {
        die("Connection failed: " . mysqli_connect_error());
    }

    $query = "SELECT * FROM `tbl_login` WHERE `username` = ".$_SESSION['username'];
$result = mysqli_query($conn, $sql);
$row = mysqli_fetch_assoc($result);
$_SESSION['id'] = $row["id"];
$_SESSION['name'] = $row["fullname"];
$_SESSION['email'] = $row["email"];
mysqli_close($conn);

或用于设置会话以及登录验证:

$conn = mysqli_connect($servername, $username, $password);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

$query = "SELECT * FROM `tbl_login` WHERE `username` = ".$_POST['username']." AND `password`= ".$POST['password'];

$result = mysqli_query($conn, $query);
$row = mysqli_fetch_assoc($result);
if(isset($row)){
    $_SESSION['id'] = $row["id"];
    $_SESSION['username'] = $row["username"];
    $_SESSION['name'] = $row["fullname"];
    $_SESSION['email'] = $row["email"];
} else {
    redirect('login.php');   //reload login page on failure
}
mysqli_close($conn);

这是基本代码,您可以将此代码拆分为 MVC。

【讨论】:

    猜你喜欢
    • 2021-11-05
    • 2016-09-28
    • 2020-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    • 2014-09-17
    相关资源
    最近更新 更多