【问题标题】:supplied argument is not a valid MySQL result [duplicate]提供的参数不是有效的 MySQL 结果 [重复]
【发布时间】:2011-08-21 07:07:17
【问题描述】:

我的网络应用程序中出现 PHP 警告。我有点菜鸟。 我想根据每个用户配置文件中的“adjusttimezone”整数为“更新”时间戳添加一个时区偏移量?

这是代码:

$timezonequery = mysql_query('SELECT adjusttimezone FROM members WHERE member_id=' . $_SESSION["myid"]);
$timezone = (int)mysql_result('$timezonequery', 0);
$updatedquery = mysql_query('SELECT DATE_ADD(updated, INTERVAL ' . $timezone . ' HOUR) FROM projects WHERE project_id=' . $i);

它有效,但我担心这个警告:

警告:mysql_result():已提供 参数不是有效的 MySQL 结果 第 9 行 xxx.php 中的资源

有人可以帮忙吗?谢谢

【问题讨论】:

  • 您的代码可能容易受到 SQL 注入攻击 - 请考虑使用准备好的语句。 (如果您不知道这些术语的含义,请花点时间查找它们 - 它们很重要!)
  • 我通常只使用 mysql_real_escape_string();准备好的语句看起来更容易!非常感谢。

标签: php mysql warnings intervals datestamp


【解决方案1】:

您将 $timezonequery 作为字符串传递,它需要一个 mysql 资源。从您的 mysql_result 调用中删除引号:

$timezone = (int)mysql_result('$timezonequery', 0); // With quotes
$timezone = (int)mysql_result($timezonequery, 0);   // Without

【讨论】:

  • 啊!小学生错误。谢谢
猜你喜欢
  • 2011-04-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-08
  • 1970-01-01
相关资源
最近更新 更多