首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >我想为用户显示mysql中的数据,但它显示的是其他所有人

我想为用户显示mysql中的数据,但它显示的是其他所有人
EN

Stack Overflow用户
提问于 2019-06-10 07:35:09
回答 1查看 42关注 0票数 3

我想要显示登录用户的信息,也就是他们的ID,名字,姓氏,等等,在运行下面显示的代码后,它显示了数据库中的其他所有人,并排除了应该显示数据的“用户”。

代码语言:javascript
运行
复制
include("server.php");
if (!isset($_SESSION['username'])) {
$_SESSION['msg'] = "You must log in first";
header('location: login.php');
}
if (isset($_GET['logout'])) {
session_destroy();
unset($_SESSION['username']);
header("location: login.php");
}


$sql = "select id, username, fname, lname, email from users WHERE username != '{$_SESSION['username']}'";
$result = mysqli_query($db, $sql);
if(mysqli_num_rows($result) > 0 ){

while($row = mysqli_fetch_assoc($result)){


?>



        <tr>
            <td><?=$row['id']?></td>
              <td><?=$row['username']?></td>
            <td><?=$row['fname']?></td>
            <td><?=$row['lname']?></td>
            <td><?=$row['email']?></td>
            <br>

        </tr>

<?php
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-10 09:50:48

检查你的SQL语句,你有WHERE username !=,而你的需求是WHERE username =

此外,您应该避免在SQL语句中直接使用原始输入,即使它是从会话中获得的当前登录的用户名,因为这存在安全风险。请改用预准备语句。看看How to change from mysql to pdo using prepared statements in PHP?,但你也可以用谷歌搜索,网上有很多例子。

如果评论中的人提供了正式的回答,请随时接受他们的回答。欢迎来到SO :)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56519123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档