我正在使用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
提示: 此函数可用于准备用于存储在数据库和数据库查询中的字符串。
升级问题时:
请仔细阅读这两篇文章,这只是一个配置问题。在那之后,我认为你可以做到。
代码点火器文件上传
如何上传编码器中的文件点火器