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