使用$ _SESSION用户名从MySQL数据库中检索数据

时间:2013-12-29 17:44:07

标签: php session mysqli syntax-error

我是PHP新手,我正在尝试创建一个个人资料页面,用户可以在注册网站时查看他们插入的信息。

起初我只是用他们的名字来尝试这个,所以无论谁登录都可以看到他们在数据库中保存了哪个名字。

我有一个包含“checklog.php”页面,其中包含

<? php session_start(); ?>;

在我的页面中,当我使用时;

echo $_SESSION['username'] 

用户的用户名打印得很好。

所以我试图在mysqli查询中应用它,以便从这样的数据库中打印出他们的名字;

<?php 

if($db_server){

               $query = "SELECT firstname FROM users WHERE username=$_SESSION['username']";     

               $result = mysqli_query($db_server, $query) or 

               die(mysql_error($db_server)); 

               if (!$result) die('Query failed: ' . mysqli_error($db_server)); 

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

                                                         echo $row['firstname'];

 }

 }

 mysqli_free_result($result);

 ?>

但是我在第15行得到一个错误,这是SQL语句,有人能告诉我在我的陈述中我做错了吗?

1 个答案:

答案 0 :(得分:0)

首先在PHP代码的顶部添加session_start(); ..

<?php
session_start();//<-- Here

第二..像这样重写你的查询..

$query = "SELECT firstname FROM users WHERE username= '".$_SESSION['username']."'";