上传名称中包含单引号的文件时未设置文件数组


The file array not getting set when uploading files having single quote in names

我正在使用CodeIgniter框架构建一个Web应用程序。问题是,在上传文件名中'单引号的文件时(例如:Rob's.wmv),我在控制器中得到一个空的文件数组。CI 确实具有在名称包含特殊字符时更新文件名的代码,但由于数组设置不正确,因此不会进行上传。我不明白发生了什么,我尝试调试,似乎上传在我的本地机器上工作正常,但在服务器上则不行,这使它更加有趣。

更新 文件数组var_dump返回一个空数组,因此我什至无法在脚本中获取文件名。未设置文件数组,我根本没有获得有关该文件的任何信息。

你必须

使用php的addslashes()addslashes() 函数返回一个在预定义字符前面带有反斜杠的字符串。

例:

$var = "Rob's.wmv"; 
//then 
$var = addslashes($var);

预定义字符为:

single quote (')
double quote (")
backslash (')
NULL

提示: 此函数可用于准备用于存储在数据库和数据库查询中的字符串。

升级问题时:

请仔细阅读这两篇文章,这只是一个配置问题。在那之后,我认为你可以做到。

代码点火器文件上传

如何上传编码器中的文件点火器