之前已经参考过很多文献和帖子,如[https://www.v2ex.com/t/137724]等
我正在本机进行测试:
1. 修改my.ini [mysql] default-character-set = utf8mb4 [mysqld]character-set-server=utf8mb4
2. 重启mysql,检查mysql版本为5.6
3. 做了一个Demo PHP脚本,在Safari和Google Chrome浏览器中进行测试:
创建一个数据库*test2*,创建表*test*:
test
CREATE TABLE(
id
int(10) unsigned NOT NULL AUTO_INCREMENT,
content
text COLLATE utf8mb4_unicode_ci NOT NULL,
id
PRIMARY KEY ()
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
PHP脚本尝试存入和取出:
`
<?php
header("Content-type:text/html;charset=utf-8");
mysql_connect('localhost','root','');
mysql_select_db('test');
mysql_query('SET CHARSET utf8mb4');
if($_POST){
//insert table
mysql_query('INSERT INTO test(content)VALUES('.$_POST['emoji'].')');
echo '<p>Sql:INSERT INTO test(content)VALUES(\''.$_POST['emoji'].'\')</p>';
}
$result = mysql_query("select * from test order by id DESC");
echo '<ul>';
while($row = mysql_fetch_assoc($result)){
echo '<li>'.$row['content'].'</li>';
}
echo '</ul>';
?>
<style style="text/css">
* {
padding: 0px;
margin: 0px;
font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", Tahoma, "Hiragino Sans GB", "Microsoft Yahei", sans-serif;
}
</style>
加油!你的目标是实现录入💩(如果你看不到,说明你浏览器不支持)😄!
<form action="" method="post">
<input type="post" name="emoji">
<input type="submit" value="click me">
</form>
`
脚本效果:
http://i.imgur.com/Yn8JaL3.png
数据插入效果:
http://i.imgur.com/SG8L5ph.png
mysql版本:
http://i.imgur.com/3h5iAvk.png
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.