SQLSRV 致命错误:翻译 Unicode 时出现严重错误
Posted
技术标签:
【中文标题】SQLSRV 致命错误:翻译 Unicode 时出现严重错误【英文标题】:SQLSRV Fatal error: Severe error translating Unicode 【发布时间】:2015-08-10 21:01:39 【问题描述】:我正在尝试在 php 中为 SQL Sever 数据库运行基本的 while 循环。我得到以下错误:
Fatal error: Severe error translating Unicode
该代码适用于另一个脚本,因此我认为这与我正在查询的表有关。这是我正在使用的代码
if(isset($_GET['uid']) && $_GET['uid'] != '')
$uid = $_GET['uid'];
// check for user
$staffSQL = "SELECT * FROM staff WHERE userid = '".$uid."'";
$params = array();
$staff = sqlsrv_query( $conn, $staffSQL, $params, array("Scrollable"=>"buffered"));
$numStaff = sqlsrv_num_rows($staff);
if($numStaff < 1)
$response["error"] = TRUE;
$response["error_msg"] = "No projects found!";
else
while( $row = sqlsrv_fetch_array( $staff, SQLSRV_FETCH_ASSOC) )
foreach($row as $key => $value)
echo "$key = $value <br />";
经过一番谷歌搜索,我找到了this link,但那里的建议代码只返回令人费解的胡言乱语。
【问题讨论】:
【参考方案1】:好的,经过一番谷歌搜索后,我发现this page 表示解决方案是在 sqlsrv_connect 函数中添加 CharacterSet 选项。
$result = sqlsrv_connect($hostname, array(
'UID' => $username,
'PWD' => $password,
'Database' => $database,
'ConnectionPooling' => ($pooling) ? 1 : 0,
"CharacterSet" => "UTF-8" // <---- voila
));
我已经对此进行了测试,并且效果很好。
【讨论】:
以上是关于SQLSRV 致命错误:翻译 Unicode 时出现严重错误的主要内容,如果未能解决你的问题,请参考以下文章
php:致命错误:调用未定义函数 sqlsrv_connect()
致命错误:使用 wamp php 5.5.12 调用未定义函数 sqlsrv_connect()