2016-05-20 46 views
6
ben CodeIgniter'daki dosyayı yüklüyorum

yılında küçük harf harf değiştirmektirDosya uzantısı kullanarak CodeIgniter'da

$this->upload->do_upload('image') 

ancak dosya hamle belirli yoluna dosya uzantısı değiştirildiğinde

(o harfe değişti) örneğin

Ben dosyayı karşıya eğer "profile.JPG" o değişiklikleri var "profile.jpg"

+1

upload.php ben artık tüm uzantıları küçük harflerle olmasını bekliyoruz bilmek, bu bir avantajdır düşünce, istiyorsunuz. Dosya adını, büyük/küçük harf duyarlılığı nedeniyle aldığınızda kırılan bir veritabanında kaydediyorsanız, sadece strtolower() tüm dosya isimleri DB – JohnnyFaldo

+1

'a eklenirken Evet Johnny bunun yararıdır, fakat neden codeigniter değiştirir. ve strtolower() bunun için iyi bir seçenek. –

+0

Neden olmasın, en iyi tahminim bazı sistemler büyük/küçük harfe duyarlıdır, bu yüzden bu, tüm dosya uzantılarını yüklemelerde normalleştirir. Sitenizi büyük/küçük harfe duyarlı olmayan bir sistemden büyük/küçük harfe duyarlı bir sisteme taşımak, sorunlu olabilir. – JohnnyFaldo

cevap

2

CI sistemi kütüphaneye YANLIŞ CI yükleme kütüphane $ file_ext_tolower = içinde

varsayılan değiştirin.

.Sistem \ kütüphaneleri \

public $file_ext_tolower = TRUE; 
1

do_upload bu

$ yapılandırma [ 'hepsini yapıyor için owed_types'] = 'gif | jpg | png'

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()) 
     { 
      $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); 
     } 
    } 

size dosyayı kaydetmek için göndermek aynı ad/uzantıyı kullanmak isterseniz. Sen kullanabilirsiniz:

$upload_dir= $this->config->item("upload_dir"); 
$fileName = $_POST['sku_code'].".".$extension; 
$filePath = $upload_dir.$fileName; 
move_uploaded_file($_FILES["image-file"]["tmp_name"],$filePath); 

Faydalı link:

https://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html