如何解决表情符号未通过 PHP 存储在 mysql 中
下面是我的mysql表。
CREATE TABLE `mydb`.`mytable` ( `id` INT NOT NULL AUTO_INCREMENT,`comment` VARCHAR(100) NOT NULL,PRIMARY KEY (`id`)) ENGINE = MyISAM;
ALTER DATABASE mydb CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
ALTER TABLE mytable CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
下面是我的php代码。
<?php
if(isset($_POST["submit"])){
$con = mysqli_connect("localhost","root","","mydb");
$comment = mysqli_real_escape_string($con,$_POST['comment']);
$sql="INSERT INTO `user`(`comment`) VALUES ('".$comment."')";
if (mysqli_query($con,$sql)) {
echo "New record created successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($con);
}
}
?>
<html>
<head></head>
<body>
<form method="POST">
<input type="text" name="comment">
<input type="submit" value="submit" name="submit">
</form>
</body>
</html>
当我尝试在 localhost 中使用表情符号提交时,未知字符被存储(插入)在 localhost 中。 当我尝试在 000webhost.com 中使用表情符号提交时,数据库中没有插入任何记录。
但是我可以通过直接在 mysql 服务器(PHP MYADMIN)中执行以下 sql 命令来将表情符号直接存储在两个数据库(localhost 和 000webhost.com)中。
INSERT INTO `mytable`(`comment`) VALUES ('?');
但我无法使用 PHP 插入表情符号。所以我的问题是如何使用PHP向mysql服务器插入表情符号?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。