【发布时间】:2013-12-04 00:38:27
【问题描述】:
我有 2 个 sqlite3.x 数据库(来自 iPhone),一个来自游戏应用程序,另一个是地址簿。
我在 php conf 中有记录和显示错误。
使用 PHP/PDO,我可以显示游戏数据库中的字段和值,包括我在结果页面中捕获并使用“img src='data:...' 呈现的图像 blob。我正在使用 htmlentities其他字段来捕获 plist 二进制 blob 等内容。
我正在使用 perl 脚本生成第一页,示例数据是通过对 sqlite3 的系统调用获得的。该脚本正在通过作为 cli 参数提供的目录进行递归搜索。
我基本上从数据库中的每个表中获取第一条记录(作为数据样本),为用户提供他们想要进一步询问的字段的选项,并将这些选项传递给表单处理程序,该处理程序对目标执行查询表,并从选定的列中获取数据。
但是...我在尝试连接到通讯录数据库时收到“无法打开数据库”一般错误。
我已经检查了数据库的权限、所有权,将两者放在同一个目录中,让它们完全向世界开放..我能想到的一切,仍然没有乐趣。
真正奇怪的是,我可以使用 sqlite3 从命令行非常愉快地查询所有数据库,但是在使用 PDO 时出现此错误。
整个事情发生在以下几点:
($db and $strSQL vals passed from previous page)
$dbh = new PDO('sqlite:'.$db);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_WARNING);
$result = $dbh->query($strSQL);
即使我从表中选择一个简单的主键列,我也会收到错误,所以我很确定这不是数据处理问题。我什至在 Firefox 和 Chrome 数据库上尝试过同样的脚本……完全没有问题。
非常感谢任何想法/指针/建议。这个让我头疼!
干杯。
【问题讨论】: