最近关于比价系统遇到的若干问题做一个简单的总结:
- MSSQL和PHP的链接。【ntwdblib.dll文件的版本低导致PHP无法连接MSSQL】ntwdblib.dll (2000.80.194.0)
- PHP调用JAVA程序. [运行JAR包的程序不能调用本身自己包里的JAR, 解决方法 1:可以设置JAR包里面的MANIFEST.MF文件的Class-Path属性。 例如:Class-Path: commons-beanutils.jar,2:打包事可以把调用的JAR包CLASS解压出来和自己的程序CLASS一起打包]
- PHP或者JAVA调用网上邻居文件
- 图片解析文字OCR
只有一个php_pdo_odbc.dll。
so~最新最好的php连接mssql方法应该是这样:
<?php
初步验证不可用
//$cnx = new PDO("odbc:Driver=TDS;Server=$server;Database=newaiderdb;",$user,$passwd);
//$dsn = "odbc:Driver=TDS; Server=$server; Uid=$user; Pwd=$passwd; Database=newaiderdb;";
//$cnx = new PDO($dsn);
//MiscroSoft sqlsrv for php windows
//$cnx = new PDO( "sqlsrv:Server=$server ; Database = newaiderdb", $user, $passwd, array(PDO::SQLSRV_ATTR_DIRECT_QUERY => true));
//Linux, TDS Data Source, support utf8
//$cnx = new PDO('odbc:mssql',$user,$passwd);
$cnx = new PDO("odbc:Driver={SQL Server};Server=127.0.0.1;Database=test;",""sa"",""asd123"");
var_dump($cnx);
$a = $cnx->query("SELECT * FROM [user]");
var_dump($a);
foreach ($a as $b) {
var_dump($b);
}
?>
ubuntu php 5.3.6
验证可用
$cnx = new PDO ( 'dblib:host=192.168.2.243:1433;dbname=newaiderdb', $user, $passwd );