我有一个应用程序,我需要连接我的web(基于PHP)应用程序与桌面应用程序数据库,使桌面和web都可以相互通信。在ubuntu操作系统连接工作良好,但当我谈到windows 7 codeigniter sql server连接不工作。我尝试了许多平台上提供的visual c++再分发包和其他指令,但都失败了。我还在php'ext和DLL文件中添加了扩展,以及包括像sql_serv55_nts这样的扩展,但没有任何工作。收到的最后一个错误是
由于php5.dll缺失,应用程序无法运行。有没有人能尽快帮我解决这个问题,并把适当的测试程序发给我?
你说你已经安装了sql_serv55_nts
版本的SQLServer库,这是你的问题。
安装TS(线程安全)版本的SQLServer库。XAMPP在windows上运行线程安全。
php5.dll
是php5ts.dll
的Non Thread Safe
版本,它是随PHP的XAMPP安装提供的。
一旦你安装了TS版本的SQLServer库,删除
php5.dll
,它是不需要的,而且你从一个你不能确定是安全的来源得到它。一个简单的经验法则如果需要,它会随XAMPP安装而来。注意:你永远不需要复制任何与Apache/PHP/MYSQL相关的文件到Windows系统文件夹中。如果您这样做了,那么当您安装另一个版本的XAMPP时,它仍然会在那里,并且会导致您花费数小时的调试时间来找出为什么会出现奇怪的问题。
另外:添加任何与Windows PATH相关的XAMPP或WAMPServer也很危险,因为这也会导致您在更新XAMPP/WAMPServer时出现问题,因为您一定会忘记已经完成了此操作。
尝试将php目录和php扩展目录添加到PATH环境变量中。
我用以下方法解决了这个问题。
- 安装xampp
- install microsoft redistributionpackage
- 下载php5。php5.dll中的ddl文件
- 如果窗口是32位的,只需将下载的php5.dll拷贝到windows/system32
- 如果你有64位窗口,你需要将其复制到windows/SysWOW64中。最好是重启你的电脑都做过…