在数据库中插入文件名

时间:2015-02-10 12:29:53

标签: codeigniter special-characters plupload non-ascii-characters

我正在使用带有codeigniter的plupload来上传文件。

但是当文件名有特殊字符时就有问题。

示例:当文件名为“cópia”时,其插入“co?pia”

我必须在DB中插入原始文件名并在aplication中声明'UTF-8'

有人可以帮忙吗?


编辑:问题是该字段在latin1上,我的应用程序在UTF-8上。如果我转换字段,我可以有问题吗?

2 个答案:

答案 0 :(得分:0)

使用$ this-> security-> sanitize_filename()在将数据插入数据库之前删除无效的文件名

可在此处找到更多信息 https://ellislab.com/codeigniter/user-guide/libraries/security.html

要声明UTF-8,您需要修改 应用/配置/ database.php中

$ db ['default'] ['char_set'] =“utf8”; $ db ['default'] ['dbcollat​​'] =“utf8_general_ci”;

答案 1 :(得分:0)

两部分:

1,你的读者。 确保您的读者(可能是您的编码程序)使用UTF8

2,您的数据库也在UTF8上,  对于MS-SQL服务器,该列应为nvarchar()