尝试用PHP上传文件?

尝试用PHP上传文件?,php,Php,我正在尝试使用PHP上传文件。为了做到这一点,我使用了$\u文件,但我不明白为什么它不起作用。在寻找解决方案时,我发现了一些使用$\u文件的建议,但仍然无法做到这一点。为了看看上传是否有效,我使用了Chrome的Postman。我正在使用Ubuntu和LAMP 我怎么做呢 <?php $arquivo = isset($_FILES["file"]) ? $_FILES["file"] : FALSE; if(!$arquivo) { echo "You can not ac

我正在尝试使用PHP上传文件。为了做到这一点,我使用了$\u文件,但我不明白为什么它不起作用。在寻找解决方案时,我发现了一些使用$\u文件的建议,但仍然无法做到这一点。为了看看上传是否有效,我使用了Chrome的Postman。我正在使用Ubuntu和LAMP

我怎么做呢

<?php

$arquivo = isset($_FILES["file"]) ? $_FILES["file"] : FALSE;

if(!$arquivo) { 
    echo "You can not access this file directly!"; 
}else{
    $diretorio = "/home/fernando/Imagens/";

    if (move_uploaded_file($arquivo["tmp_name"], $diretorio.$arquivo["name"])) { 
            echo "File upload ok!"; 
    }else{
         echo "File not upload!"; 
    }   
}

?>

例外情况

<br />
<b>Warning</b>:  move_uploaded_file(/home/fernando/Imagens/avatar_empresa.jpg): failed to open stream: Permission denied in 
<b>/var/www/TelefonesUteis/ws/add_file.php</b> on line 
<b>12</b>
<br />
<br />
<b>Warning</b>:  move_uploaded_file(): Unable to move '/tmp/phpq9AlVw' to '/home/fernando/Imagens/avatar_empresa.jpg' in 
<b>/var/www/TelefonesUteis/ws/add_file.php</b> on line 
<b>12</b>
<br />

警告:移动上传的文件(/home/fernando/Imagens/avatar\u empresa.jpg):无法打开流:中的权限被拒绝 /var/www/TelefonesUteis/ws/add_file.php在线 12

警告:移动上传的文件():无法在中将“/tmp/phpq9AlVw”移动到“/home/fernando/Imagens/avatar\u empresa.jpg” /var/www/TelefonesUteis/ws/add_file.php在线 12
邮递员

<br />
<b>Warning</b>:  move_uploaded_file(/home/fernando/Imagens/avatar_empresa.jpg): failed to open stream: Permission denied in 
<b>/var/www/TelefonesUteis/ws/add_file.php</b> on line 
<b>12</b>
<br />
<br />
<b>Warning</b>:  move_uploaded_file(): Unable to move '/tmp/phpq9AlVw' to '/home/fernando/Imagens/avatar_empresa.jpg' in 
<b>/var/www/TelefonesUteis/ws/add_file.php</b> on line 
<b>12</b>
<br />

您的脚本没有在
/home/fernando/Imagens/
中添加和/或执行文件的权限。您必须使用
chmod


chmod-R 775/home/fernando/Imagens

您的日志中有错误吗?打开
后立即将错误报告添加到文件顶部
也发布HTML表单请
chmod 777/home/fernando/Imagens/
ma如果您阅读了,错误非常清楚。。您试图将文件移动到的路径上没有足够的写入权限。。给它写权限,然后再试一次
775
应该足够了,不需要在那里执行任何操作吗?是的,你是对的
775
在大多数情况下可能是一个更安全的选择。编辑了我的答案。请记住,CHMOD仅授予当前文件的权限,如果您要添加新文件夹/文件,默认情况下它们将被阻止,则每次应用程序上载或在该文件夹中生成新内容时,您都必须重复CHMOD操作。在Linux上处理web应用程序(使用上传或文件管理)是一件令人头痛的事,hahaha说,准备好使用很多控制台吧。是的,但他的问题是他没有将文件写入文件夹的权限。如果他使用chmod 775或777,他将拥有这些权限。