"Enter"a basıp içeriğe geçin

Upload İşlemleri

Projenizde kullanıcıların upload işlemi yapması gerekiyorsa kullanabileceğin ortak bir PHPXI kütüphanesi mevcuttur.

use Upload;

ve ya

use \PHPXI\Libraries\Upload\Upload;

Dikkat : /PHPXI/APPLICATION/Config/Upload.php yapılandırma dosyasını kendinize göre düzenlemenizi tavsiye ederiz. Bakınız; Upload.php Yapılandırması

Yükleme İşlemi

Form::start(array("enctype" => "multipart/form-data", "method" => "post"));
Form::input(array("name"=>"dosya", "type"=>"file"));
Form::add_input(array("value"=>"Upload", "type"=>"submit"));
echo Form::output();

Form Kütüphanesinin kullanımını bilmiyorsanız bakınız; Form Kütüphanesi Kullanımı

şekilde bir yükleme formumuz olduğunu varsayacak olursak yükleme işlemi;

$file = Input::files("dosya");
Upload::file($file);
Upload::handle();

Yüklemenin Sonuçları

Yükleme işleminin sonuçlarını almak için;

Upload::return();

kullanılır. Yükleme işleminde bir hata oluştuysa oluşan hatayı döndürür. Başarılı olursa yükleme verilerini bir dizi/Array olarak döndürür.

Başarılı bir yükleme işlemi sonrası return() fonksiyonu aşağıdakine benzer bir sonuç döndürür.

[
name => "resim.jpg", //Yüklenen Dosyanın Adı
size => 200450, //Yüklenen dosyanın byte cinsinden boyutu
type => "image/jpeg", //Yüklenen dosyanın gerçek türü
path => "/home/site/public_html/uploads/resim.jpg", //yüklemenin path yolu
url => "http://site.com/uploads/resim.jpg" //ulaşılabilir url adresi
thumbnail => array( //Thumbnail kullanmıyorsanız bu dizi boş dönecektir.
path => "/home/site/public_html/uploads/thumb_resim.jpg",
url => "http://size.com/uploads/thumb_resim.jpg"
),
status => true //Yükleme başarılıysa true başarısızsa false olur.
]

Thumnail Kullanımı

Yüklemesini yaptığınız dosya bir resim dosyası ise PHPXI’ye bunun bir thumbnailini oluşturtabilirsiniz. Bunun için thumbnail() fonksiyonu kullanılır.

handle() sonrasında kullanılmalıdır.
Sırasıyla Genişlik, Yükseklik ve Ön Ek olmak üzere üç parametre alabilir.
Varsayılan genişlik değeri 300px, yükseklik değeri 300px ve ön eki “thumb_” şeklindedir.

Upload::file($file);
Upload::handle();
Upload::thumbnail();

Örnek olarak 400px genişliğinde 300px yüksekliğinde ve ön eki “onek_” olacak şekilde thumbnail oluşturmak için;

Upload::file($file)
Upload::handle();
Upload::thumbnail(400, 300, "onek_");

Yükleme Yapılandırmasını Değiştirme

PHPXI yükleme işlemini aksi belirtilmediği sürece varsayılan olarak Upload.php yapılandırma dosyasındaki bilgilere göre yüklemeye çalışacaktır. Ancak projenizin bazı bölümlerinde bu ayaları manipüle etmek isteyebilirsiniz. Bu işlem için Upload kütüphanesi içindeki config() fonksiyonu kullanılmalıdır.

$upload_config = array(
"path" => "/home/public_html/farkli_uploads/", //Yükleme yolunu değiştir
"file_type" => array("image/png") //Sadece PNG resimlere izin ver
);
Upload::config($upload_config);
Upload::file($file);
Upload::handle();

şeklinde kullanılabilir.