我正在尝试将上传的文件替换为某个位置。
我的代码是:
if (isset($_FILES['image']['name']))
{
$saveto = 'img/$user.jpg'; //$user would be the name of the current user.
move_uploaded_file($_FILES['image']['tmp_name'], $saveto);
}
我收到了这个错误,
Warning: move_uploaded_file(img/$user.jpg): failed to open stream: Permission denied in /Applications/XAMPP/xamppfiles/htdocs/profile.php on line 33
虽然已设置权限sudo chmod 777
。它还在给我这个错误,问题是什么?感谢
答案 0 :(得分:0)
两件事。
首先,您将$saveto = 'img/$user.jpg';
更改为$saveto = "img/$user.jpg";
。在PHP中,声明'
和"
的字符串具有不同的行为。使用'
时,它不会将$user
的值提取到字符串中,而是会逐字地写入$user
。
但这不是错误。错误是您无权在目录/img/
中创建文件。确保您在此文件夹中设置了正确的权限。
或者也许是因为$
不是Linux中文件名的有效符号,但我不确定。