更新:应按照建议在serverfault上。新帖子在这里:https://serverfault.com/questions/451220/psql-64bit-driver-error普适SQL驱动程序
我很难让PHP使用Pervasive SQL驱动程序连接ODBC。
我有一个Ubuntu服务器12.04,并且已经安装在这里的64位PSQL客户端驱动程序: http://www.pervasivedb.com/psqlv11/Pages/PSQL-v11-Linux-Downloads.aspx
我安装我的ODBC.INI与DSN到我的数据库,我可以愉快地进行连接,然后运行查询:
isql Exchequer
当我使用PHP,odbc_connect看起来不错,给我的资源,但odbc_exec(在驾驶员叫点),然后完全失败(SEG故障):
[Fri Aug 10 11:05:50 2012] [notice] child pid 13770 exit signal Segmentation fault (11)
我做错了什么?
UPDATE:
下面是从gdb的
(gdb) run /var/www/default/scripts/stock/index.php
Starting program: /usr/bin/php5 /var/www/default/scripts/stock/index.php
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffecc89700 (LWP 14514)]
[Thread 0x7fffecc89700 (LWP 14514) exited]
Halt[Inferior 1 (process 14513) exited normally]
(gdb) bt
No stack.
输出和PHP的error.log进入
[Fri Aug 10 15:24:53 2012] [notice] child pid 14510 exit signal Segmentation fault (11)
我也是在跟踪/跟踪文件添加,但我不知道似乎得到任何输出保存到日志文件。
更新2:
这是简化的脚本我运行:
如果($ ODBC = odbc_connect( “金库”, “用户名”, “密码”)!){ 模(“连接到国库失败”); } $ rows = odbc_exec($ odbc,'SELECT sl.slStockCode,sl.slQtyInStock,sl.slQtyAllocated,sl.slLocCode FROM StockLocation sl WHERE sl.slLocCode IN(\'DIG \',\'WOO \',\ 'MEN \')'); echo“
".print_r($rows,true)."”;
odbc_connect工作(不死),但我一直在我的浏览器中看到错误342,并在apache日志文件中“退出信号分段错误”。
找到更多关于此的信息**这个问题不应该在** serverfault **上? – 2012-08-10 10:12:26