我的SQL数据库中有一个表,该表有两个字段,一个用于id,另一个用于整数。我想获取整数字段中的值,其中id等于我传入的特定数字.id字段称为“id”,整数字段称为“loglevel”。这是我得到的代码,但它没有给我想要的结果。
$result = mysql_query("SELECT loglevel FROM Logs WHERE id='$number'");
echo "Pulled from SQL: " . $result;
此输出为
Pulled from SQL: Resource id #2
如果SQL表中的值是2?
,你可以帮助我,使输出为“2”谢谢,
答案 0 :(得分:4)
您需要使用mysql_fetch_assoc()
或mysql_fetch_array()
(或其他)获取结果。 $result
返回的mysql_query()
是结果资源,而不是实际的行集:
$result = mysql_query("SELECT loglevel FROM Logs WHERE id='$number'");
// If the query completed without errors, fetch a result
if ($result) {
$row = mysql_fetch_assoc($result);
echo $row['loglevel'];
}
// Otherwise display the error
else echo "An error occurred: " . mysql_error();
当您期望返回多行而不是一行时,在while
循环内获取它们。 mysql_fetch_assoc()
documentation 中有很多例子。
答案 1 :(得分:0)
$ result = mysql_query(“SELECT loglevel FROM Logs WHERE id ='$ number'”);
这里$ result是一个记录集/ mysql资源而不是php数组。你需要使用mysql_fetch_assoc()或mysql_fetch_array()来访问$ result。
if ($result) {
while( $row = mysql_fetch_assoc($result)){
$my_assoc[] = $row;
}
}
var_dump($my_assoc);
这将打印查询中的所有数据。