我有一个基于Sybase数据库的应用程序。该应用程序在Windows Server 2003上运行。我尝试从php
获取数据库,并显示缺少许多dll
个文件,包括php sybase扩展。我检查了php扩展dir,发现该文件存在于显示错误的路径上。
这里我想提一下,我在Windows服务器上安装了xampp 1.8.0并启用了php.ini的sybase扩展。
我使用以下代码进行连接,如php doc
所述<?php
$link = sybase_connect('SYBASE', '', '')
or die("Could not connect !");
echo "Connected successfully";
sybase_close($link);
?>
==更新==
显示以下dll
文件丢失,我下载并手动添加。
libcs.dll
libintl.dll
iconv.dll
现在我收到以下错误,
The procedure entry point iconv_open could not be located in the dynamic link library iconv.dll
从启用Sybase PHP扩展的开始就出现此错误。
PHP Startup: unable to load dynamic library 'C:\xampp\php\ext\php_sybase_ct.dll' - the specified procedure could not be found
答案 0 :(得分:0)
当我看到unable to load dynamic library 'C:\xampp\php\ext\php_sybase_ct.dll'
时,问题已归结为a)拥有一组旧的/过时的libs或b)使用引用“旧”Sybase lib名称的应用程序(使用ASE 15,Sybase改变了他们的libs的名字,一些应用程序还没有拿到这个。)
对于第一个问题,明显的(?)解决方案是下载适当的一组Sybase库(这将取决于您的应用程序代码/版本以及ASE版本)。 [帖子中的信息不足以了解这是否可以解释您的情况。]
对于第二个问题,有一个相对简单的解决方案(以下是基于具有Sybase特定子目录的PHP应用程序,该子目录包含Sybase客户端库):
...\OCS*\scripts
copylibs.bat
php_sybase_ct.dll
错误消息就会消失