我有这个脚本用于将文件从一个文件夹移动到另一个文件夹,但是我收到错误,
$photo= $_POST['camera']; // i.e. 45647.jpg
//move file to userpics/ folder
rename ("../uploads/$photo", "../userpics/$photo");
但是我收到了这个错误:
Warning: rename(/uploads/1czcec43s.jpg\n,/userpics/1czcec43s.jpg\n) [function.rename]: No error in .. on line 24
答案 0 :(得分:2)
您的文件名包含换行符\n
。这可能是错误的根源。尝试拨打trim
:
$photo = trim($_POST['camera']); // i.e. 45647.jpg
rename ("../uploads/$photo", "../userpics/$photo");
另外,为了善良,请为您的代码添加一些健全性检查。您的用户可以轻松地将web/index.php
(例如)作为$_POST['camera']
的内容并覆盖您的PHP文件。
答案 1 :(得分:0)
在使用的POST参数的末尾有一个\ n(换行符)。你试过删除吗?
注意:提供的代码非常容易受到攻击。