mysql - 为什么我在 $result 中得到结果

标签 mysql

<分区>

Possible Duplicate:
Why do I get “Resource id #4” when I apply print_r() to an array in PHP?
How do i “echo” a “Resource id #6” from a MySql response in PHP?

为什么我在 $result 中得到“Resource id #6”?想要 1 或 0 :P

$sql = "SELECT * FROM members WHERE rchat=1 LIMIT 1";
$result = mysql_query($sql);

if (!$result) {
unlink($fn);
//$fn = $_SESSION['sess_user'].'.txt';
$fn = 'hittaingen.txt';
mysql_query("UPDATE members SET rchat=1 room='" . $_SESSION['sess_user'] . "' WHERE     user='" . $_SESSION['sess_user'] . "'");
}

else {
  //$fn = $result['room'].'.txt';
  $fn = 'hitta.txt';
  mysql_query("UPDATE members SET rchat=2 room='" . $result['room'] . "' WHERE user='" . $_SESSION['sess_user'] . "'");
  }

最佳答案

mysql_query() 仅返回结果对象的引用,而不返回结果本身。所以为了让你得到 0 或 1,你必须首先使用例如 mysql_fetch_array() 来解析结果。

$row = mysql_fetch_array( $result );

此外,您绝对应该查看PDOmysqli ,因为 mysql_X() 函数被标记为已弃用,通常不被认为是安全的,可以防止 SQL 注入(inject)!

关于mysql - 为什么我在 $result 中得到结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13266438/

相关文章:

php - MySQL 脚本仅检索 Steam ID,仅此而已

mysql - 如何将两个MySQL查询的结果合并为一个?

javascript - Sails.js,Model.update() 抛出 ER_BAD_FIELD_ERROR : Unknown column 'undefined' in 'where clause'

mysql - 如何在不重启数据库服务器的情况下解决MySQL的.MYI文件损坏问题?

php - MYSQL 更新连接错误 ->

mysql - 即使对于解释计划,也要努力应对长时间运行的查询,这也花费了很多时间

php - 更新数据库中的所有表

mysql - 带日期的 Cron 文件名正在传递 Y_m_d 而不是实际日期

mysql - 重置 MySQL root 密码在运行 init-file 时出现错误

php - 在 select 语句中使用匹配项的第一个匹配计数