0
我使用CodeIgniter,我有一个公式与一些输入字段。问题在于,当我在输入字段中写入特殊字符(如“&”)时,它将被保存为&
,当我重新加载表单以编辑该值时,它将如此显示。 这导致许多错误,需要解决。该值需要保存为“&”。PHP/MySQL - 表格输入值“&”得到保存为“&”
我使用form_validation像,输入字段:
$this->form_validation->set_rules("input1", "Name", "required|trim");
$this->form_validation->set_rules("input2", "Name", "required|trim");
后来,我写所有输入在一个数组并把它交给在模型的函数:
$input= array();
$input["input1"] = set_value("input1");
$input["input2"] = set_value("input2");
$this->MInput->update_input($input_id, $input);
该模型看起来像这样:
function update_input($input_id, $input) {
if($this->db->update("pa_it_input", $input, "id = $input_id") === FALSE) {
$error = $this->db->error();
log_message("error", "Database error in MInput [".$error["code"]."] ".$error["message"]);
return FALSE;
}
我不知道是什么导致了错误。我已经检查过所有表都设置为UTF-8,并且页面也以UTF-8加载。
那么接口的文档是如何传递字符串以及从字符串&字符串如'&'&'&'?请同时阅读[mcve]并采取行动。 – philipxy
这是类似于下面的ff链接:https://stackoverflow.com/questions/11704233/the-best-way-to-store-ampersand-in-mysql-database与https://stackoverflow.com/questions/ 3545735 /存储在&数据库中 – Riyenz
可能与您的表单有关。请显示它。使用formhelper或'form_prep()' –