使用preg_replace函数不会在mysql中插入

时间:2012-10-09 11:36:45

标签: php mysql codeigniter

我使用preg_replace函数,它工作正常,但当我插入数据库(MYSQL)时,它插入不变(我的%“”名称是& sourov,datta。)而不是 “我的名字是sourov,datta。”数据库没有正确插入的原因是什么?

<?php

$des='My   %   name is   & sourov, datta.';
$des = preg_replace('/[^a-zA-Z0-9\,\.]/', ' ', $des);
echo $des; //output will : My name is sourov, datta.
$data = array(
           'title' => $des,
        );

$this->db->insert('mytable', $data); 
?>

1 个答案:

答案 0 :(得分:2)

该模式产生此输出:

My         name is     sourov, datta.

你需要的是:

$des = preg_replace('/[^a-zA-Z0-9,\.]+/', ' ', $des);

请注意字符组后面的+。如果你仍然在你的数据库中获得原始字符串,那么你没有做正确的事情,但这不再是问题了。