-3

我刚开始使用 php 和 mysql,我遇到了这种情况。用户注册到页面并登录。我用$_SESSION['SESS_USERNAME']来问候他,直到这里一切正常。然后我想在输入字段中显示与此登录用户相关的数据,例如名字、姓氏、地址,然后他可以在数据库中编辑和更新。我该怎么做呢?我找到了很多示例,但是当我只想为登录的用户显示数据时,我无法弄清楚什么最适合我的场景。任何帮助将不胜感激!谢谢

4

3 回答 3

3

你会想做一些类似的事情:

<?php
$con=mysqli_connect("example.com","peter","abc123","my_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$result = mysqli_query($con,"SELECT * FROM users WHERE username = '".$_SESSION['SESS_USERNAME']."'");

while($row = mysqli_fetch_array($result))
  {
  echo $row['FirstName'] . " " . $row['LastName'];
  echo "<br />";
  }

mysqli_close($con);
?>

这是使用MySQLi SELECT.

SELECT * FROM users WHERE username = '".$_SESSION['SESS_USERNAME']."'基本上说选择等于会话用户名users的所有行。username所以理论上这将返回该用户名会话的数据。

要显示列数据,您只需将列名放入:

$row['column_name']

例如,它可以被echo淘汰。

希望这是有用的,同样在将来,请向我们展示您尝试过的内容,我建议您阅读常见问题解答

于 2013-03-22T14:29:50.047 回答
0

我会建议使用他的 user_id。当他登录时,您可以通过 user_id 获取他的信息。

例子:

<?php

$user = new User();

//Check if is numeric only
if(is_numeric($_SESSION["user_id"]))
  $user->GetUser((int)$_SESSION["user_id"]);
else
  throw new Exception("Session incorrect");   

class User
{
   public $user_name;
   public $last_name;
   public $address;

   public function __construct()
   {
   }

   public function GetUser($user_id)
   {
      //Get user info from database
      // fill object
     $this->user_name = $result["username"];
     $this->last_name = $result["last_name"];
     $this->address = $result["address"];

     return $this;
   }
}
?>
于 2013-03-22T14:34:46.340 回答
0

其他信息存储在哪里?您需要使用用户名来搜索和检索它们。假设它们在 MySQL 数据库中,请查看有关 PDO 的教程以安全地检索条目

于 2013-03-22T14:33:09.033 回答