使用session获取其他变量

时间:2017-05-04 20:27:28

标签: php mysql sql session

我有表用户,如:

  user
=======
username
password
var

登录后,我想使用这样的用户名会话打印变量var,但还没有取得任何成功。

<?php

if(empty($_SESSION)){
    header("Location: logout.php");
}
$username=$_SESSION['username'];

$link = mysql_connect("localhost", "root", "");
mysql_select_db("vhts", $link);

$var = mysql_query("SELECT var FROM user where username='$username'", $link);
echo $var;

?>

如何纠正?

2 个答案:

答案 0 :(得分:2)

mysql_query()返回布尔值或resource。当返回值是资源时,可以通过调用mysql_fetch_assoc()之类的函数来获取值。

$result = mysql_query("SELECT var FROM user where username='$username'", $link);
$row = mysql_fetch_array($result, MYSQL_ASSOC);
$var = $row['var'];   
echo $var;    
?>

重要提示:

  

警告

     

此扩展在PHP 5.5.0中已弃用,并已在PHP 7.0.0中删除。相反,应使用MySQLiPDO_MySQL扩展名。有关详细信息,另请参阅MySQL: choosing an API指南和related FAQ。该功能的替代方案包括:

     

(来源:http://php.net/mysql_fetch_assoc

因此,您应该考虑使用mysqli_query()mysqli_fetch_array()

答案 1 :(得分:0)

"SELECT var FROM user where username='$username'"

应该工作..,var可能在

$var['var']

并且不要忘记添加获取功能

$var = mysql_fetch_assoc($var); // highly recommended to use mysqli / PDO