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