Php 在Codeigniter中上载文件问题

Php 在Codeigniter中上载文件问题,php,codeigniter,file-upload,Php,Codeigniter,File Upload,这是我在codeigniter应用程序中上传的INFG文件代码 function upload_logo(){ $ex=$_FILES['uploadfile']['name']; $epld=explode('.',$ex); $filename=date("mdyHis").".".$epld[1]; $userfile_size=$_FILES['uploadfile']['size']; $imggtype=$_FILES['uploadfile'

这是我在codeigniter应用程序中上传的INFG文件代码

function upload_logo(){
    $ex=$_FILES['uploadfile']['name'];
    $epld=explode('.',$ex);
    $filename=date("mdyHis").".".$epld[1];
    $userfile_size=$_FILES['uploadfile']['size'];
    $imggtype=$_FILES['uploadfile']['type'];
    if(move_uploaded_file($_FILES['uploadfile']['tmp_name'],"./uploads/".$filename))
        {   
            echo $filename;
        }
    }
这里的
uploadfile
是文件字段的名称。我在根文件夹中有一个名为uploads的文件夹。当我上载文件时,我遇到了错误。这在我们的服务器上工作,但在客户端服务器上不工作

A PHP Error was encountered

Severity: Warning

Message: move_uploaded_file(./uploads/112911224341.docx) [function.move-uploaded-file]: failed to open stream: Permission denied

Filename: controllers/pms.php

Line Number: 156
A PHP Error was encountered

Severity: Warning

Message: move_uploaded_file() [function.move-uploaded-file]: Unable to move '/tmp/phpvhzCkw' to './uploads/112911224341.docx'

Filename: controllers/pms.php

Line Number: 156

如何解决此问题?

错误消息指出这是权限问题。确保您在上载文件夹上设置了正确的权限:

您需要为上载的图像设置一个目标文件夹。创建一个 CodeIgniter安装根目录下名为uploads and的文件夹 将其文件权限设置为777


发生此错误有两个原因

  • 文件夹的权限以及无效的组和用户所有者
  • 走错了路 文件夹的权限和所有者: 如果你在Linux中。打开终端键入此命令。这将更改文件夹的所有者

    $ cd project_path && sudo chown -R www-data:www-data picture_folder/    
    
    键入此命令以更改文件夹的权限

    $ sudo chmod -R 777 picture_folder/
    
    注意:使用man命令有关这些命令的更多帮助

    $ man chmod  OR man chown
    
    文件夹的路径。 在codeigniter中,执行index.php根文件。它负责所有的活动。所以不要对根路径使用base_url()。相反只需给出根文件夹的名称。像

    CI应用 ->

    -应用

    function upload_logo(){
        $ex=$_FILES['uploadfile']['name'];
        $epld=explode('.',$ex);
        $filename=date("mdyHis").".".$epld[1];
        $userfile_size=$_FILES['uploadfile']['size'];
        $imggtype=$_FILES['uploadfile']['type'];
        if(move_uploaded_file($_FILES['uploadfile']['tmp_name'],"./uploads/".$filename))
            {   
                echo $filename;
            }
        }
    
    -系统

    -用户指南

    -index.php

    -图片文件夹

      $target_directory="picture_folder/sub_folder";
    
    如果是UBUNTU操作系统,那么 转到要上载/保留“上载文件”的文件夹,右键单击该文件夹->属性->权限,然后更改所有“访问权限”以创建和删除文件


    如果也没有发生,则转到其父文件夹,并执行相同的步骤。我相信,你不会得到这个问题。因为,刚才,我犯了这个错误。我只是这样解决的

    是的,我在根文件夹中有一个名为uploads的文件夹。我如何将其权限设置为777?@KichuUser:快速的谷歌搜索将告诉您如何为您所在的任何系统(Linux、Windows等)设置文件夹权限。