Windows下PHP连接SQL Server 2000 可以用一个”容易”来形容。1.打开php.ini, 找到下面这行;extension=php_mssql.dll去掉前面的分号,变成extension=php_mssql.dll2.确认php.ini内extension_dir制定的目录里面有php_mssql.dll文件3.重启web server4.检查php_info() 确定有下面行: http://blog.cn-ic.org/wp-content/uploads/2008/11/mssql_windows.jpg5. DoneLinux下完成同样的事情稍显复杂一些,毕竟SQL Server 是 MS的东东。1.需要额外安装一个叫“FreeTDS”的的开源软件,可以到http://www.freetds.org/下载最新版本,我下载时的最新版本为0.82, 文件名:freetds-stable.tgz, 该软件的官方说明是这样的:FreeTDS is a set of libraries for Unix and Linux that allows your programs to natively talk to Microsoft SQL Server and Sybase databases.2.解压安装命令:tar zxvf freetds-stable.tgzcd freetds-0.82./configure –pre-fix=/usr/local/freetds –with-tdsver=7.0 //关于–with-tdsver,官方说明是: normally 5.0 for Sybase and 7.0 for Microsoftmakemake install3. 测试freetds用下面格式的命令:/usr/local/freetds/bin/tsql -S servername -p port -U username -P password测试看能否连接sql server4.重新编译PHP, 我重新编译时,一般先php_info()看一下当前的编译条件,copy过来,再加上我需要添加的编译条件./configure –你之前的编译条件 –with-mssql=/usr/local/freetds5. 编译错误排除,我在编译的时候出现下面错误configure: error: Directory /usr/local/freetds is not a FreeTDS installation directory需要新建两个文件: $ touch /usr/local/freetds/include/tds.h $ touch /usr/local/freetds/lib/libtds.a6. make & make install7. 重启web serverPHP测试,用下面代码: <?php $msserver=your server; $msuser=Your Username; $mspass=Your Password; $msdb=mssql_connect($msserver,$msuser,$mspass) or die(”Connect MSSQL Fail!”); echo “Connect MSSQL Successful!” ?>目前,我还有字符编码的问题需要解决。唉…数据库的字符编码是最头疼的问题之一了。
<?php $msconnect=mssql_connect("Mssql_server","username","password"); $msdb=mssql_select_db("User_DB",$msconnect); $msquery = "select * from User_TABLE"; $msresults= mssql_query($msquery); while ($row = mssql_fetch_array($msresults)) { echo "$row[0]<br>"; } ?>
http://blog.cn-ic.org/wp-content/uploads/2008/11/mssql_windows.jpg5. DoneLinux下完成同样的事情稍显复杂一些,毕竟SQL Server 是 MS的东东。1.需要额外安装一个叫“FreeTDS”的的开源软件,可以到http://www.freetds.org/下载最新版本,我下载时的最新版本为0.82, 文件名:freetds-stable.tgz, 该软件的官方说明是这样的:FreeTDS is a set of libraries for Unix and Linux that allows your programs to natively talk to Microsoft SQL Server and Sybase databases.2.解压安装命令:tar zxvf freetds-stable.tgzcd freetds-0.82./configure –pre-fix=/usr/local/freetds –with-tdsver=7.0 //关于–with-tdsver,官方说明是: normally 5.0 for Sybase and 7.0 for Microsoftmakemake install3. 测试freetds用下面格式的命令:/usr/local/freetds/bin/tsql -S servername -p port -U username -P password测试看能否连接sql server4.重新编译PHP, 我重新编译时,一般先php_info()看一下当前的编译条件,copy过来,再加上我需要添加的编译条件./configure –你之前的编译条件 –with-mssql=/usr/local/freetds5. 编译错误排除,我在编译的时候出现下面错误configure: error: Directory /usr/local/freetds is not a FreeTDS installation directory需要新建两个文件:
$ touch /usr/local/freetds/include/tds.h
$ touch /usr/local/freetds/lib/libtds.a6. make & make install7. 重启web serverPHP测试,用下面代码:
<?php
$msserver=your server;
$msuser=Your Username;
$mspass=Your Password;
$msdb=mssql_connect($msserver,$msuser,$mspass) or die(”Connect MSSQL Fail!”);
echo “Connect MSSQL Successful!”
?>目前,我还有字符编码的问题需要解决。唉…数据库的字符编码是最头疼的问题之一了。
$msconnect=mssql_connect("Mssql_server","username","password");
$msdb=mssql_select_db("User_DB",$msconnect);
$msquery = "select * from User_TABLE";
$msresults= mssql_query($msquery);
while ($row = mssql_fetch_array($msresults)) {
echo "$row[0]<br>";
}
?>