来源:www.cncfan.com | 2006-1-11 | (有2844人读过)
很高兴看到大家在使用Sybase,在使用本站php_sybct.dll模块时,不少网友遇到问题, 现将网友们的问题解释如下:
1.注意你的PHP版本,我只使用PHP官方源代码(http://php.net)编译PHP.而且,在PHP4里,我发现每一个版本都稍有区别(主要与ZEND有关),因此PHP4的模块严格区分PHP版本,PHP4RC1的模块不可能在PHP4.0.0中使用.有网友使用swwwing.com公司的PHP编译版,我不能保证你一定能使用本模块. 2.正确配置你的PHP,保证你的机器在系统可遍历的路径里只有一个php.ini,并配置正确,建议的做法: 将php_sybct.dll拷至php4所在目录,如c:\php4,修改php.ini(一般位于Windows目录或WinNT目录)中extension_dir=c:\php4 增加 extension=php_sybct.dll 注意=号两边不要有空格;运行php_info();,查看PHP输出信息,若找到sybase_ct信息,证明模块加载成功.否则,就是你的PHP版本与本模块不匹配.其实最简单办法是看有没有什么 'X-Powered By...' 信息,若有, 则模块肯定与PHP版本不匹配! 3.正确安装并配置好Sybase Client端,PHP连接Sybase数据库不是凭空的,它需要Sybase Client DLL的支持.使用SQLEDIT为Web数据库增加一个数据服务(当然,这不是必须的,你可以使用现有的数据服务)SybWeb,正确填写配置参数后,存盘退出. 使用SybasePing工具,确保SybWeb服务能ping通Sybase Server. 4.编写PHP代码,连接数据库,使用sybase_pconnect("SybWeb","sa","sapass");//sapass为sa用户的连接密码.Sybase会提示诸如"changed database to master..."等信息,若想屏蔽这些信息,可在函数前加'@',sybase_select_db("Your DataBase Name")函数前也应加'@'. 5.其它问题: *关于非法操作 其一可能与本机有关,如Sybase Client安装不正确,或Win9x系统有问题.你可以移植到WinNT试试; 其二可能与Sybase Client版本有关,我使用SybaseCT Version 11.0.2编译的本模块,后来有网友提供了Version 11.9.2,我将在PHP4.0.1(含)以后的版本中使用.就像MSSQL有65与70一样,Sybase也会有版本区分.此模块我发给过不少国外的网友,他们使用都很正常.我想是因为老外不像国人那么时髦,什么都用最新的缘故. *关于Linux或UNIX下Sybase的连接 我没有使用两种系统下的Sybase,因此无法测试,但国内外都有网友使用本模块成功的建立了与Sybase for Lunix的连接.我想都是基于TCP/IP的,并不奇怪.不过,应注意,此时的SybWeb服务应基于TCP/IP(NLWNSCK)而不是命名管道(NLMSNMP). *关于Sybase SQL Any Where 有网友使用本模块连接 Sybase SQL Any Where,这是Sybase的一种小型化的基于桌面的数据库系统,可能无法使用本模块.
我使用Win98+Apache1.3.12+Sybase system 11(Client)+PHP4.0.0作开发; 数据库为 WinNT4+Sybase system11; Web Server为Apache1.3.12(运行于WinNT)+PHP4.0.0,暂时与数据库 Server 同机; 使用一直正常.
|