我正在使用 PHP
和 MySQL
开发一款应用程序。
问题如下:
如何以可读格式或
नवीन खेतिहर उपकरण।
格式存储数据到MySQL
中?当用户在文本框中输入数据并单击提交时,我们会获得不同格式的数据。我们需要做什么来将其转换并以可读格式存储到
MySQL
中?
选择utf8字符集和utf8_general_ci
排序规则。
显然,用于存储印地语文本的字段的排序规则应为utf8_general_ci
。
要更改表字段,请运行:
ALTER TABLE `<table_name>` CHANGE `<field_name>` `<field_name>` VARCHAR(100)
CHARSET utf8 COLLATE utf8_general_ci DEFAULT '' NOT NULL;
连接到数据库后,首先运行以下语句
mysql_set_charset('utf8');
例:
//setting character set
mysql_set_charset('utf8');
//insert Hindi text
mysql_query("INSERT INTO ....");
获取数据
//setting character set
mysql_set_charset('utf8');
//select Hindi text
mysql_query("SELECT * FROM ....");
在您在浏览器上打印任何Unicode文本(比如印地文),您需要通过添加元标签来设置页面的内容类型。
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Example Unicode</title>
</head>
<body>
<?php echo $hindiText; ?>
</body>
</html>
更新:
mysql_query("SET CHARACTER SET utf8")
已经改为mysql_set_charset('utf8')
。这是更推荐的方法来改变字符集。不建议使用mysql_query()来设置它(例如SET NAMES utf8)。请参见http://php.net/manual/en/function.mysql-set-charset.php*
mysqli_set_charset($db_conn,'utf-8');
- AlphaALTER TABLE <tablename> CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
utf8_general_ci
而不是ut8_unicode_ci
,因为据说它更快。 utf8_general_ci和utf8_unicode_ci有什么区别?
不需要更改表的字符集。但是您的数据库应该使用 utf8_unicode_ci。
在连接数据库时,只需要添加这一行代码即可:"mysqli_set_charset($con,'utf8')"
$con = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
mysqli_set_charset($con, 'utf8');
mysqli_query($con, $sql);