4

非常感谢您的回答,他们真的帮了我很多!

我很好奇我做错了什么:我无法从 SQL 语句中获取任何值。

我的数据库表结构: 在此处输入图像描述

我的代码:

include('config.php');
$id = $_GET['id'];

$query = "SELECT * FROM upload WHERE id = '$id'";
echo $query."<br/>";


$result = mysql_query($query) or die('error');
print_r($result);
echo $result['id'];

测试时我得到以下信息:

"SELECT * FROM upload WHERE id = '1'

资源 ID #2"

但是有一个值为'2'的id,但为什么它没有显示在我的html中?只有使用“while”语句,我才能得到想要的结果:

while($results = mysql_fetch_array($result)) 
    {
        echo $results['filetitle'];
    }

对于单个结果,此 while 语句是否必要?我的意思是,只能有一个ID。

4

4 回答 4

2

资源就是资源。它包含许多行。当恰好返回一行时,它不是特殊情况。

while如果您知道只有一个结果,则不必使用,但仍需要使用或mysql_fetch_array其他方法从中提取第一行。

于 2013-04-17T11:58:04.953 回答
1

SELECT语句 return Resource ID #,您必须使用mysql_fetch_array, mysql_fetch_assoc函数迭代您的结果。

于 2013-04-17T11:58:52.080 回答
1

$result是一个矩阵,每一行都有一个输出。因此,要访问id 您,首先必须指明该行。

例如,与$result[ 0 ][ 'id' ].

但是,最好通过while($results = mysql_fetch_array($result))表达式来完成。

于 2013-04-17T11:56:41.070 回答
0

试试这个

$result[0]['id'];
于 2013-04-17T11:57:19.613 回答