易截截图软件、单文件、免安装、纯绿色、仅160KB

PHP查询显示SqlServer中的中文

因为工作需要,数据库使用的MS SQL Server2005,而默认的排序规则是SQL_Latin1_General_CP1_CI_AS。创建了一个表,因为需要存储中文信息,Address字段的类型是nvarchar(255)。
此时使用php来连接sql server,页面的编码和文件的编码都是UTF-8,查询此Address字段,显示在页面上是???之类的。怎么解决?
使用
iconv('iso-8859-1','utf-8',$address);

是没有什么用处的。
此时如果SQL一语句中指定字符排序规则为中文再进行转换输出的才是正常的:
$query = 'select Address collate Chinese_PRC_CI_AS from A';
$rs = mssql_query($query,$conn) or die ('Query failed: '.$query);
if ($row = mssql_fetch_array($rs))
{
$address = $row[0];
$address = iconv('GBK','UTF-8',$address);
echo $address;
}

还有其它方法吗?


相关文档:

五个常见 PHP 数据库问题

如果只有一种 方式使用数据库是正确的……
您可以用很多的方式创建数据库设计、数据库访问和基于数据库的 PHP 业务逻辑代码,但最终一般以错误告终。本文说明了数据库设计和访问数据库的 PHP 代码中出现的五个常见问题,以及在遇到这些问题时如何修复它们。
问题 1:直接使用 MySQL
一个常见问题是较老的 PH ......

PHP 中个别用法汇集(用到更新)

个别符号
@:函数前加@符号可以屏蔽该函数如果发生错误的报错信息,如:@file_put_contents("1.txt", "Hello World!", FILE_APPENDS); 这里的FILE_APPENDS常量根本就没有,但是该语句执行时不会报错,如果前面去掉@,则会报出参数错误。
#:就是PHP中的行注释,用法作用跟 // 一样。找遍 PHP 参考中没有提到。
转义 ......

PHP网站开发方案(开发新人必读)

一、开发成员
a)项目主管
b)页面美工
c)页面开发
d)服务端程序开发
e)系统与数据管理
f)测试与版本控制
二、 网站组开发简明流程
三、 开发工具与环境
a)服务器配置
i. WEB服务器: FreeBSD6.1+Apache2.0+PHP5.0,SVN版本控制服务(仅测试机)。
ii.数据库服务器: WIN2003 server+SQL server  ......

Oracle存储过程转成Sqlserver存储过程

Oracle存储过程转成Sqlserver存储过程
1.日期转换
Oracle: TO_NUMBER(TO_CHAR(SYSDATE, 'YYYYMMDD'))
SqlServer:CAST(CONVERT(CHAR(8),GETDATE(), 112) AS INT)
    注:其中‘YYYYMMDD’格式   对应112
2.ROWID转换
Oracle: ROWID
SqlServer: PRIMARY KEY(表主键)
3.ROWNUM ......

Nginx+PHP 配置漏洞

这个漏洞严格上说并不是 Nginx 和 PHP 本身的漏洞造成的,而是由配置造成的。在我之前写的许多配置中,都普遍存在这个漏洞。
简易检测方法:
打开 Nginx + PHP 服务器上的任意一张图片,如:
http://blog.lrenwang.com/test.png
如果在图片链接后加一串 /xxx.php (xxx为任意字符)后,如:
http://blog.lrenwang.com/ ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号