如何在php表单文件上传中从文件名中删除像撇号/引号这样的特殊字符

时间:2015-02-26 11:52:36

标签: php jquery mysql

我在文件上传时出现问题,文件名为vikas的photo.jpg.i必须使用php脚本上传并插入文件名(viaks' s photo.jpg)到mysql数据库表中。如果可能的话,可以使用jquery在客户端处理文件名。

1 个答案:

答案 0 :(得分:3)

这种情况有两种选择。要么逃避报价,要么删除报价。如果你转义单引号,那么你的文件名将看起来像vikas\'s photo.jpg所以它可以毫无问题地插入数据库。如果您删除单引号,则您的文件名将变为vikass photo.jpg

如果你想逃避引用,那么你可以使用mysql_real_escape_string($string)因为mysql_ *函数被折旧你也可以使用

mysqli_real_escape_string ( mysqli $link , string $escapestr )

在你的情况下

$oldFileName = $_FILES['file']['name'];
$fileName = mysql_real_escape_string($oldFileName);

如果您想要替换引号,则可以使用$fileName = str_replace("'","", $oldFileName);