0

我正在使用codeigniter的plupload来上传文件。在数据库中插入文件名

但是,当文件名有特殊字符它有问题。

例如:当文件名是“COPIA”其插入“?合PIA”

我必须插入原始文件名中的DB和aplication声明“UTF-8”

有人能帮忙吗?


编辑:问题是该领域是latin1的,我的应用是UTF-8。如果我转换了场,我能有问题?

回答

0

使用$这个 - >安全 - > sanitize_filename()插入数据前删除无效的文件名DB

更多信息可以在这里 https://ellislab.com/codeigniter/user-guide/libraries/security.html

发现声明UTF-8则需要修改 application/config/database.php

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

+0

它没有工作..插入' co'pia'too – Guilherme 2015-02-10 12:37:57

+0

我的数据库等同于这个 – Guilherme 2015-02-10 12:52:14

0

两部分:

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

2,你的数据库还对UTF8, 为MS-SQL服务器列应该是nvarchar()

+0

那就是数据库中的问题。该表使用UTF-8,但字段编码位于latin1上。有什么建议吗? – Guilherme 2015-02-10 13:29:52

+0

什么是您的数据引擎?应该很容易google像'mySQL latin1到UTF8' – 2015-02-10 13:31:36

+0

我的引擎是innoDB。桌子真的是巨大的问题。这将更难转换为巨人UTF-8 – Guilherme 2015-02-10 13:54:50