php - mysql 获取名字的id

标签 php mysql

你好,我有一个这样的数据库:

ID Name Password
1  Hans  *****

现在,当我登录时,我会获得该名称的 PHP session 。

现在我想获取我在登录中输入的名称并保存在NameSession中的ID,并将其也保存到SESSION中。

我在互联网上搜索过,因为它看起来并不难,但我还没有找到任何东西。

这是我到目前为止的代码。

$sql = "SELECT * FROM login WHERE Login='".$loginname."' and Password = '".$loginpassword."'";
$result = mysql_query($sql);
if (mysql_num_rows($result)>0) { //...wenn ein Datensatz mit diesem Nicknamen gefunden wurde:
    echo "Willkommen ".$loginname; //Fehlermeldung

    //Session registieren
    $_SESSION['loginname'] = $loginname;
    $_SESSION['UserID'] = $User_ID;

    //Text ausgeben
header('Location: home.php');
exit();  
}

最佳答案

获取特定记录的相应id。 假设您的表结构是您在问题中提到的ID名称密码。根据它,你的 SQL 查询应该是这样的:

"SELECT * FROM login WHERE Name ='".$loginname."' and Password = '".$loginpassword."'";

更改此:

if (mysql_num_rows($result)>0) { //...wenn ein Datensatz mit diesem Nicknamen gefunden wurde:
    echo "Willkommen ".$loginname;

对此:

if (mysql_num_rows($result)>0) { //...wenn ein Datensatz mit diesem Nicknamen gefunden wurde:
  $row = mysql_fetch_array($result);
    echo $row['ID'];

  //saving the id and username in sessions
  $_SESSION['loginname'] = $loginname;
  $_SESSION['UserID'] = $row['ID'];

Note: This is still bad practice, Kindly study mysqli or PDO.

PHP Manual: MySQL Improved Extension

PHP Manual: PHP Data Objects

关于php - mysql 获取名字的id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32808292/

相关文章:

php - Laravel 中的 robots.txt

php - 如何在href中传递不同的信息

PHP 按列标题问题排序

php - 如何在 php 和 mysql 中计算带有 unix 时间戳的记录月份组。

php - 你如何隐藏你的php源代码?

php - Foreach Loop 只循环一次

php - 配置导航栏在不同类型的用户登录 Laravel 5.2 时显示不同的按钮

php - UPDATE 查询中的 MySql CASE 语句

mysql - 如何在MySQL中添加选择时不存在的行

java - Tomcat jdbc 连接池 - Pool-Cleaner Memory Leak