php作为数据库字符集插入sql\u latin1\u general\u cp1\u ci\u
我有一个sql数据库,sql\u拉丁1\u通用\u cp1\u ci\u作为排序规则。php作为数据库字符集插入sql\u latin1\u general\u cp1\u ci\u,php,sql-server,character-encoding,Php,Sql Server,Character Encoding,我有一个sql数据库,sql\u拉丁1\u通用\u cp1\u ci\u作为排序规则。 数据库将包含大约3种语言(英语、土耳其语、阿拉伯语)。 在主页上,我将字符集设置为utf-8,如下所示: header('Content-Type: text/html; charset=UTF-8'); <meta charset="utf-8"> 当我输入英语单词时,没有问题 但当我使用其他语言时,这些单词会作为不清楚的字符插入 我试图使用iconv,但它不起作用 $name = iconv
数据库将包含大约3种语言(英语、土耳其语、阿拉伯语)。
在主页上,我将字符集设置为utf-8,如下所示:
header('Content-Type: text/html; charset=UTF-8');
<meta charset="utf-8">
当我输入英语单词时,没有问题但当我使用其他语言时,这些单词会作为不清楚的字符插入 我试图使用iconv,但它不起作用
$name = iconv("UTF_8","Windows-1252",$name);
//and
$name = iconv("UTF_8","UCS-2LE",$name);
如果sql\u latin1\u general\u cp1\u ci\u as不是,那么在我的情况下,最好的排序规则是什么?是否有另一种不更改排序规则的解决方案我希望我的问题不要重复,因为我在这里读了很多问题,但没有找到正确的答案 谢谢。你可以试试这个:
- 确保“cust”列为nvarchar()
- 用UTF-8编码html和php文件(这一步我通常使用记事本+)
- 转换输入数据
您可以尝试以下方法:
- 确保“cust”列为nvarchar()
- 用UTF-8编码html和php文件(这一步我通常使用记事本+)
- 转换输入数据
ODBC是SQL Server连接唯一可能的解决方案吗?是的,现在是。ODBC是SQL Server连接唯一可能的解决方案吗?是的,现在是。非常感谢(Zhorov)就是这样:)。非常感谢(Zhorov)就是这样:)。
$name = iconv("UTF_8","Windows-1252",$name);
//and
$name = iconv("UTF_8","UCS-2LE",$name);
<html>
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta charset="utf-8">
<?php
...
$name = $_POST['cust_name'];
$name = iconv('UTF-8', 'UTF-16LE', $name);
$name = bin2hex($name);
$sql = "INSERT INTO inv01 (cust) VALUES (CONVERT(nvarchar(MAX), 0x".$value."))";
...
?>
</head>
<body></body>
</html>