我想在我的sqltable中输入हिन्दी。 我在表格中将整理作为utf8_unicode_ci 当我在php页面中回显变量时显示हिन्दी 但在数据库中它会得到奇怪的值,如“हि&#2344”
我的代码如下:
<?php
include("connection.php");
mysqli_set_charset($con,'utf8');
$var=$_POST['var'];
$var1=$_POST['var1'];
$query="insert into test values('$var','$var1')";
if($result=mysqli_query($con,$query))
{
echo $var;
echo $var1;
echo "success";
}
?>
答案 0 :(得分:1)
这些是您从浏览器获得的HTML实体,并在任何浏览器中显示为Unicode字符。
即使您只是从数据库中读取它们以显示它们(一切看起来都很好),最好不要在数据库中存在这种垃圾。
在HTML表单中将表单交付为UTF-8并说服务器接受UTF-8:
<form action="... .php" method="post" accept-charset="UTF-8">
(我假设页面已经以UTF-8传送;其内容类型。)
$_POST
将保留纯Unicode字符而不是实体。
<?php
header("Content-Type: text/html; charset=utf-8");
//连接后立即 mysql_query(“SET NAMES utf8”); ... ?&GT;
答案 1 :(得分:0)
使用8位UCS / Unicode转换格式,适用于任何(最好的)语言
utf8_general_ci
这可能有所帮助。