【发布时间】:2016-02-02 09:44:51
【问题描述】:
我正在尝试将“£”存储在数据库中。我还在集合中将此字段标记为utf8_general_ci。但它保存为�。我还在元标记 HTML 文件中设置了 UTF-8。这里缺少什么
-----编辑-----------
我检查过,那个页面上有一个编辑器(富文本)。如果我使用这个编辑器保存数据,那么它会生成 - 但如果我使用文本框,那么它工作正常。我不知道这有什么问题以及如何调试这个问题
$query = "insert into field_master set fk_t_id = '".$_POST['t_id']."', fk_g_id = '".$_POST['g_id']."', fk_f_id = '".$_POST['f_id_'.$inc_i.'_'.$inc_j]."'".$str.", field_value = '".$field_value."', field_required = '".$required."', fk_section_id = '".$_POST['section_id_'.$inc_i]."', section_order = '".$_POST['section_order_'.$inc_i]."', field_order = '".$_POST['temp_order_'.$inc_i.'_'.$inc_j]."'";
$smt = $class->dbh->prepare($query);
$smt->execute();
【问题讨论】:
-
INSERT INTO table (column) VALUES ('£');在 phpmyadmin 中手动尝试此操作
-
如果查询执行属性意味着,你需要修复你的代码..显示你的代码..你必须需要使用 ENT_QUOTE、'utf-8' 或 SET NAMES utf8 等。
-
@devpro: 我已经设置了 $stmt1 = $class->dbh->prepare("SET NAMES 'utf8'");
-
手动运行插入查询
标签: php mysql iis utf-8 rich-text-editor