Пытаюсь заюзать http://www.microsoft.com/downloads/details.aspx?FamilyId=61BF87E0-D031-466B-B09A-6597C21A2E2A&displaylang=en, чтобы решить проблему с выводов разных "хитрых" символов в юникоде. Вроде, всё как в примере, а вместо vojaĝo выводит иероглифы: 瘀漀樀愀ᴁ漀. Что не так?
| Код | <? define("_CHARSET","utf-8");
echo "<META HTTP-EQUIV=\"Content-Type\" CONTENT=\"text/html; charset="._CHARSET."\">\n";
$connectionInfo = array("UID" => $userName, "PWD" => $password, "Database"=>"avengo"); $serverName = $hostName; $conn = sqlsrv_connect($serverName, $connectionInfo);
if( $conn ) { echo "Connection established.\n"; } else { echo "Connection could not be established.\n"; die( print_r( sqlsrv_errors(), true)); } $reviewID = 4; $comments = utf8_encode("[Insert comment here.]"); $comments = iconv("utf-8", "utf-16", $comments);
$params1 = array( array($comments, null, SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_BINARY)), array($reviewID, null) );
$tsql = "select FirstName from users where uniid='80FB0BC3-04CA-4CD1-B0D5-07FDD6A88742'"; $stmt2 = sqlsrv_query($conn, $tsql, $params1); if( sqlsrv_fetch($stmt2) ) { echo "Comments: "; $data = sqlsrv_get_field($stmt2, 0, SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_BINARY)); $data = iconv("utf-16", "utf-8", $data); echo $data."<br>"; } else { echo "Error in fetching data.<br>"; die( print_r( sqlsrv_errors(), true)); }
sqlsrv_free_stmt( $stmt2 ); sqlsrv_close($conn); ?>
|
|