2017-04-19 1 views
0

사실 파일을 업로드하는 동안 타임 스탬프가 포함 된 폴더를 만들고 파일 이름과 함께 폴더 이름을 데이터베이스에 저장하고 있습니다. 정상적으로 작동합니다. 편집하는 동안 입력 유형이 숨겨져있어 사용자가 파일을 변경하지 않고 폴더가 이미 종료 된 경우 폴더를 생성하면 안됩니다. 사용자가 파일을 변경하면 새 폴더를 만들어야합니다. 조건. 다른 사람이 아니야. 제발 누군가 도와주세요. 다음은 codeigniter의 파일 업로드 문제

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); 

HTML 코드, PHP 코드입니다 : 내가 CodeIgniter의 간단한 PHP is_dir 기능을 사용하여 내 컴퓨터에 사건을 모의 한 좋아

<div class="col-md-6"> 
    <div class="form-group"> 
    <label for="event_image">Event Banner</label> 
    <input type="file" value="<?php echo $event_image; ?>" 
    class="form-control" id="eventimage" name="event_image"> 
    <input type="hidden" name="image_exists" value="<?php echo $event_image;?>" 
    class="form-control" id="eventimage" placeholder="Enter Image Text" aria-describedby="fileHelp"> 
    <div><?php echo $event_image;?></div> 
    </div> 
</div> 
+0

if 문 앞에 폴더 이름을 인쇄하고 일치하는지 확인하십시오. 만약 당신의 스크립트가 확실히 새로운 것을 만들지 않으면 –

+0

@malik mudassar 그것은 또한 그것이 새로운 폴더를 만드는 것과 일치한다면 인쇄를 시도했습니다. – raja

+0

codeigniter를 사용한다면 핵심 PHP에서 코드를 작성하는 이유는 무엇입니까? – Gaurav

답변

2

.

는 여기에 내가 성공 디렉토리를 생성, 내 컨트롤러

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); 
    } 

} 

<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> 

마크 업

을 다음과 같이 만든 내 테스트보기

enter image description here

입니다. 내가 다시 시도

enter image description here

오류

![enter image description here

을 얻을

내 경로에 생성 된 디렉토리는 당신이로이 코드를 수정할 수 있기를 바랍니다

enter image description here

입니다 귀하의 요구 사항에 따라.