PHP+MySQL存储微信小程序editor上传的内容

难点:

1、内容中包含image地址。双引号导致php语法解析,导致sql语句失败。

2、如何存储emoji表情。

解决方法如下:

第一个问题:

sql语句原始写法:

$sql_insert = “insert into pt.travel(dst,html) value(\”$dst\”,\”$content\”)”;
如果参数中不包含双引号,执行正常,否则报错。无法解析。修改如下即可解决问题:
$sql_insert = “insert into pt.travel(dst,html) value(\”$dst\”,'”.$content.”‘)”;
使用单引号包含$content变量。
第二个问题:
有几个地方按顺序执行即可:
步骤一:
修改公共文件中数据库的连接(把utf8改为utf8mb4):
mysqli_query($con,”set names utf8mb4″);
步骤二:
修改数据库的编码为utf8mb4(可以在navicat中修改)
ALTER DATABASE database_name(数据库名) CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci;
修改表为utf8mb4:
ALTER TABLE table_name(表名) CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
最后,要修改字段也是utf8mb4:
alter table table_name(表名) modify html CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
如果是新建数据库更方便。只要先建立数据采用utf8mb4,后面的都不需要手动操作了。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注