资源ID#6作为输出?

时间:2016-01-02 16:02:49

标签: php sql

我正试图展示这个人拥有的学分。 但它不断提出“资源ID#6”,现在我已经打了谷歌和stackoverflow,我看到人们为其他人修复它,但他们真的没有解释太多......? 数据库名称是test,成员在用户中,用户有一个名为credits

的表
<?php
session_start();
include_once 'dbconnect.php';

if(!isset($_SESSION['user']))
{
 header("Location: index.php");
}
$res=mysql_query("SELECT * FROM users WHERE user_id=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);

// Trying to display the ammouth of credits from this particular member...

$credits=mysql_query("SELECT * FROM users WHERE user_id=".$_SESSION['user']);
echo $credits;
?>

1 个答案:

答案 0 :(得分:0)

为什么要两次执行相同的确切查询?

在这里,您可以将结果导入数组,您可以使用它来查看值:

$res=mysql_query("SELECT * FROM users WHERE user_id=".$_SESSION['user']);
$userRow=mysql_fetch_array($res);

但是接下来你希望完全相同的操作返回一个字符串而不是一个资源:

$credits=mysql_query("SELECT * FROM users WHERE user_id=".$_SESSION['user']);
echo $credits;

该查询返回资源,而不是字符串。因此,echo语句尽力表示该资源,这正是您所看到的。

只需从$userRow获取值,因为您已经查询了数据库:

echo $userRow['credits']; // or whatever the column is called

注意:您应该确实考虑从mysql_*操作升级到mysqli_*或PDO,并利用预准备语句和查询参数。 mysql_*已弃用,不再受支持。您可能在查询中有一个潜在的SQL注入漏洞,您应该使用查询参数(取决于$_SESSION['user']获取其值的位置)。