我需要在MySQL数据库中插入克罗地亚字符。
我已经做了所有的一切,但是当我想插入一些克罗地亚字符时,我仍然有问题。
到目前为止我做了什么:
header("Content-Type: text/html;charset=utf-8");
数据库中插入的一些输入是:æèæžš
,它应该是ćčćžš
..这只是用于测试......
有没有人知道接下来我能做些什么?我真的希望能解决这类特殊问题。
我确信当我们谈论MySQL数据库中的克罗地亚字符时,很多人都像我一样撞墙。
编辑: 插入代码(这仅用于测试,因此简化)
<?php
header("Content-Type: text/html;charset=utf-8");
$con=mysqli_connect("127.0.0.1:3306","root","admin","test");
if (!$con)
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sql="INSERT INTO test(test) VALUES('ćčćžš')";
if (!mysqli_query($con,$sql))
{
die('Error: ' . mysqli_error($con));
}else
{
print '<script type="text/javascript">alert("ok")</script>';
}
mysqli_close($con);
?>
答案 0 :(得分:3)
对于克罗地亚人来说:
utf8_general_ci
。utf8 (without BOM)
。query('SET NAMES utf8');
。<head>
标记添加<meta charset="utf-8" />
。经过测试并且有效(适用于克罗地亚语)。
Živio
答案 1 :(得分:3)
要正确读取UTF-8字符,您可以像这样创建表格:
create table patient(
/* your columns */
)character set utf8 collate utf8_unicode_ci;
并通过在php中添加set_charset('utf8')
来插入/检索您的数据:
$mysqli=new mysqli($host,$user,$password,$database);
$mysqli->set_charset('utf8');
if(mysqli_connect_errno()){
echo 'Could not connect to database. Error: '.mysqli_connect_error();
exit();
}
$query="select * from YOURTABLE";
$result=$mysqli->query($query);
if($result->num_rows>0){
while($row=$result->fetch_assoc()){
//reading $row data
}
$result->close();
}
$mysqli->close();
并且还记得将你的html字符集设置为UTF-8:
<meta charset="UTF-8">