Codeigniter – Dosya Yükleme

Dosya Yükleme sınıfını kullanarak dosyaları yükleyebiliriz ve ayrıca yüklenecek dosyanın türünü ve boyutunu da kısıtlayabiliriz. CodeIgniter’da dosya yükleme işlemini anlamak için verilen örnekte gösterilen adımları izleyin.

Örnek

Aşağıdaki kodu kopyalayın ve application / view / Upload_form.php konumunda saklayın .

<html>
 
   <head> 
      <title>Upload Form</title> 
   </head>
  
   <body> 
      <?php echo $error;?> 
      <?php echo form_open_multipart('upload/do_upload');?> 
    
      <form action = "" method = "">
         <input type = "file" name = "userfile" size = "20" /> 
         <br /><br /> 
         <input type = "submit" value = "upload" /> 
      </form> 
    
   </body>
  
</html>

 

Aşağıda verilen kodu kopyalayın ve application / view / Upload_success.php konumunda saklayın

<html>
 
   <head> 
      <title>Upload Form</title> 
   </head>
  
   <body>  
      <h3>Your file was successfully uploaded!</h3>  
    
      <ul> 
         <?phpforeach ($upload_data as $item => $value):?> 
         <li><?php echo $item;?>: <?php echo $value;?></li> 
         <?phpendforeach; ?>
      </ul>  
    
      <p><?php echo anchor('upload', 'Upload Another File!'); ?></p>  
   </body>
  
</html>

 

Aşağıda verilen kodu kopyalayın ve application / controllers / Upload.php dizininde saklayın . CodeIgniter’ın kökünde, yani uygulama klasörünün ana dizininde “ uploads ” klasörü oluşturun .

<?php
  
   class Upload extends CI_Controller {
  
      public function __construct() { 
         parent::__construct(); 
         $this->load->helper(array('form', 'url')); 
      }
    
      public function index() { 
         $this->load->view('upload_form', array('error' => ' ' )); 
      } 
    
      public function do_upload() { 
         $config['upload_path']   = './uploads/'; 
         $config['allowed_types'] = 'gif|jpg|png'; 
         $config['max_size']      = 100; 
         $config['max_width']     = 1024; 
         $config['max_height']    = 768;  
         $this->load->library('upload', $config);
      
         if ( ! $this->upload->do_upload('userfile')) {
            $error = array('error' => $this->upload->display_errors()); 
            $this->load->view('upload_form', $error); 
         }
      
         else { 
            $data = array('upload_data' => $this->upload->data()); 
            $this->load->view('upload_success', $data); 
         } 
      } 
   } 
?>

Route dosyasında application / config / routes.php dosyasında aşağıdaki değişiklikleri yapın ve dosyanın sonuna aşağıdaki satırı ekleyin.

$route['upload'] = 'Upload';

Şimdi bu örneği tarayıcıda aşağıdaki URL’yi ziyaret ederek uygulayalım. Sitenizi.com’un URL’siyle değiştirin.

http://yoursite.com/index.php/upload

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.