我有一个通过 php 的 move_uploaded_file() 上传一些文件的脚本。
在我的本地主机上测试它工作正常。尝试在主机上执行相同操作时会出现问题。我已经在这里把所有关于这件事的话题都涂红了——但没有一个能解决我的问题。
代码:
<?php
$folder = 'img';
if (isset($_FILES['test'])) {
if (is_writable($folder))
echo 'Writable';
else
echo 'IMG is not writable';
$tmp_name = $_FILES['test']['tmp_name'];
$name = $_FILES['test']['name'];
if (move_uploaded_file($tmp_name, $folder . '/' . $name)) {
echo 'File was uploaded';
}
else {
echo 'File was not uploaded';
}
}
else {
echo 'No file - no operation';
}
?>
<html>
<body>
<form action="" enctype="multipart/form-data" method="POST">
<input type="file" name="test" />
<input type="submit" value="Test" />
</form>
</body>
</html>
消息如下:
可写警告:move_uploaded_file() [function.move-uploaded-file]: Unable to move 'C:\WINDOWS\Temp\php9E75.tmp' to 'img/20130113_114901.jpg' in F:\hshome\ctc-ultralife\ultralife第 11 行的 .com\new\admin\index_files\function\test2.php 文件未上传
文件夹似乎是可写的。即使文件没有上传,也会在文件夹中以指定的名称创建(即使是空文件)。
我不知道服务器的绝对路径——它不是我的。
您的帮助将不胜感激。提前致谢。