PHP move_上传了另一个不工作的文件
我真的不明白这一点,只是有一个基本的上传脚本,但文件不会上传PHP move_上传了另一个不工作的文件,php,upload,Php,Upload,我真的不明白这一点,只是有一个基本的上传脚本,但文件不会上传 Form => enctype is set print_r($_FILES['Product_Thumb']) => [Product_Thumb] => Array ( [name] => prototype.js [type] => application/x-javascript [tmp_name] => /tmp/phpXzL6C
Form
=> enctype is set
print_r($_FILES['Product_Thumb'])
=> [Product_Thumb]
=> Array (
[name] => prototype.js
[type] => application/x-javascript
[tmp_name] => /tmp/phpXzL6CT
[error] => 0
[size] => 139854 ))
我在上传文件夹中将permissons-R设置为777。
将所有者:组更改为www-data:www-data。
Mkdir在我用于上传文件的确切路径上工作。
尝试了不同的文件,尝试了另一个文件夹,硬编码了目标文件路径,仍然不起作用
我在/var/tmp/中看到了该文件,但是移动不起作用,没有错误,什么都没有
我真的忽略了什么吗
先走一步
=======================================================================
调试输出:
调试:tmp文件:/tmp/phpgyo9a 调试:目标目录:/var/www/clubgevoel/public/img/producten/ 调试:实际目标:/var/www/clubgevoel/public/img/producten 调试:源代码可读: 调试:目标是\u目录:是 调试:目标可写:是
调试:move:boolfalse服务器上的完整文件配额?move\u上传的\u文件如果失败应发出警告i.e。返回false。确保在向所有人报告错误时,使用display_errors测试上载脚本,如下所示: ini设置“显示错误”,1 错误报告-1//或错误报告全部
这些行应该放在脚本的其他行之前。通过这种方式,您至少可以发现错误的原因。我想您正在使用绝对路径作为目标。请尝试相对路径。让我们添加更多调试输出。。。。什么是
// "also tried: move_uploaded_file($_FILES['Product_Thumb']['tmp_name'], $_SERVER['DOCUMENT_ROOT'] . '/clubgevoel/public/img/producten/2.jpg');"
error_reporting(E_ALL); ini_set('display_errors', 1);
$targetDir = $_SERVER['DOCUMENT_ROOT'] . '/clubgevoel/public/img/producten/';
$realTargetDir = realpath($targetDir);
ini_set('display_errors', 1);
echo '<pre>Debug: tmp file:', htmlspecialchars($_FILES['Product_Thumb']['tmp_name']), "</pre>\n";
echo '<pre>Debug: target directory: ', htmlspecialchars($targetDir), "</pre>\n";
echo '<pre>Debug: real target: ', htmlspecialchars($realTargetDir), "</pre>\n";
echo '<pre>Debug: source readable: ', is_readable($_FILES['Product_Thumb']['tmp_name']), "</pre>\n";
echo '<pre>Debug: target is_dir: ', is_dir($targetDir) ? 'yes':'no', "</pre>\n";
echo '<pre>Debug: target writable: ', is_writeable($targetDir) ? 'yes':'no', "</pre>\n";
$b = move_uploaded_file($_FILES['Product_Thumb']['tmp_name'], $targetDir. '2.jpg');
echo '<pre>Debug: move: '; var_dump($b); echo "</pre>\n";
打印?调试:tmp文件:/tmp/phpgyo9a 调试:目标目录:/var/www/clubgevoel/public/img/producten/ 调试:实际目标:/var/www/clubgevoel/public/img/producten 调试:源代码可读: 调试:目标是\u目录:是 调试:目标可写:是
调试:move:boolfalse你需要向我们展示你用来移动文件move\u上传的文件$\u文件['Product\u Thumb']['tmp\u name'],'/var/www/clubgevoel/public/img/producten/tralala.jpg'\r\n还尝试了:move_uploaded_file$_FILES['Product_Thumb']['tmp_name'],'/var/www/clubgevoel/public/img/producten/'$_文件['Product_Thumb']['name'];还尝试了:移动\u上传的\u文件$\u文件['Product\u Thumb']['tmp\u name'],$\u服务器['DOCUMENT\u ROOT']clubgevoel/public/img/producten/2.jpg';mkdir在以下路径上工作:$\u服务器['DOCUMENT\u ROOT']clubgevoel/public/img/producten/makemeadir'你是说在tmp目录还是磁盘空间中?足够的可用空间,服务器是一个带有apache2 en php5的Ubuntu9。还删除了/var/tmp中的所有文件,看看这是否有帮助,不,它没有:简单的复制方法有效吗?在以下位置绝对没有错误或警告:move_upload_file$_files['Product_Thumb']['tmp_name'],'/var/www/clubgevoel/public/img/producten/tralala.jpg';当我使用:S_SERVER['DOCUMENT_ROOT']时public/img/producten/”$_文件['Product_Thumb']['name']仍未上载。源代码似乎不可读,对此1有何想法?请编辑您的问题并添加其他信息,而不是将其作为答案发布