codeigniter中的文件上传问题

时间:2017-04-19 04:32:30

标签: php html codeigniter

实际上在上传文件时,我正在创建带有时间戳的文件夹,并且还将文件夹名称和文件名保存到数据库中,这样可以正常工作。虽然编辑我有隐藏在这里的输入类型我是发布值如果用户不更改文件,如果文件夹退出已经不应该创建文件夹和如果用户更改文件时,它应该创建一个新文件夹。只有它将去条件。不是其他部分。请帮助我。

下面是PHP代码,

$response = \Request::create($url, 'GET', ["X-Requested-With" => "XMLHttpRequest"])->json();

HTML code:

if(isset($_FILES['event_image']['name'])&& $_FILES['event_image']['name']!="")
{
    $folder_name =$_FILES['event_image']['name'];
    echo $folder_name;
}   
else
{
    $folder_name =$_POST['image_exists'];
    echo $folder_name;
}         
    //print_r($pathToUpload);die;
    $old = umask(0);
if (!file_exists($folder_name))
{
  //echo "djfgd";die;
  $folderName = $_POST['event_name'].time();
  $pathToUpload = 'images/events/' . $folderName;
  $create = mkdir($pathToUpload, 0777,true);
  //chmod($pathToUpload,0755,true);
  if ( ! $create )
  return;
  }
  else{
  //echo "dqqqqqq";die;
  //$folderName = $_POST['event_name'].time();
  //$pathToUpload = 'images/events/' . $folderName;
  //$create = mkdir($pathToUpload, 0777,true);
  echo "already exits";die;
  }
  umask($old); 

1 个答案:

答案 0 :(得分:2)

好吧我使用Codeigniter和简单的PHP is_dir功能在我的机器上模拟了你的情况。

这是我的测试视图

enter image description here

使用以下标记创建

<div class="container" style="margin-top:100px; ">
    <div class="col-md-6" style="border: 1px dotted red; ">
        <?php if(isset($errors)){?>
            <div class="alert alert-danger">
                <?php print_r($errors);?>
            </div>
        <?php }?>
        <?php if(isset($success)){?>
            <div class="alert alert-success">
                <?php print_r($success);?>
            </div>
        <?php }?>
        <form action="" method="post" id="form1">
            <div class="form-group">
                <label > Directory Name</label>
                <input type="text" name="name" class="form-control" >
            </div>
            <div class="form-group">
                <button type="submit" class="btn btn-danger" >Create</button>
            </div>
        </form>
    </div>

</div>

我的控制器

public function index()
{
    $data['title']='Multiple submit';
    if($_POST)
    {
        $path='uploads/'.$_POST['name'];
        if (!is_dir($path)) {
            mkdir($path);
            $data['success']='Directory Created Successfully';
            $this->load->view('form',$data);
        }
        else
        {
            $data['errors']='Directory Already Exist';
            $this->load->view('form',$data);
        }
    }
    else
    {
        $this->load->view('form',$data);
    }

}

我创建了一个目录,这是成功的。

enter image description here

我再试一次,得到一个错误

![enter image description here

在我的路径中创建的目录是

enter image description here

我希望您可以根据自己的要求修改此代码。