【发布时间】:2011-06-08 18:14:19
【问题描述】:
我在 kohana 中有一个在 php 5.2.11 上运行良好的脚本。我使用 mysql_query 为 mysql_select_tables 取出一行。当我将它放在 php 5.3 服务器上时,出现以下错误:
警告信息
检测到阻止加载此页面的错误。如果此问题仍然存在,请联系网站管理员。 系统/库/驱动程序/数据库/Mysql.php [483]: mysql_data_seek() 期望参数 2 很长,给定字符串 堆栈跟踪
系统/库/驱动程序/数据库/Mysql.php [483]: mysql_data_seek( 资源 id #39, mysql_fetch_array ) 系统/库/驱动程序/Database.php [558]: mysql_Result->seek(mysql_fetch_array) 应用程序/视图/right_menu.php [33]: Database_Result->offsetGet(mysql_fetch_array) 系统/库/Controller.php [74]: 包括(应用程序/视图/right_menu.php)
我想知道这是关于 php 5.2 与 5.3 的单独问题,还是将 mysql_list_tables 替换为 mysql_query("SHOW TABLES...") 的结果?这似乎是一个名为 mysql_fetch_array 的字符串被发送到 mysql_data_seek 作为第二个参数而不是 long 的问题,尽管这在 5.2 中有效。谢谢。
【问题讨论】:
-
它会立即告诉您 Mysql.php 中第 483 行的第二个参数不是应该的。解决这个问题,或者更好:检查最新版本的 kohana 是否没有解决这个问题。