Hazırladığınız web uygulamalarında hiç şüphesiz kullanıcı etkileşimi çok önemlidir. Kullanıcılardan bilgiler almak, alınan bilgileri kaydetmek ve gerektiğinde tekrar kullanıcılara sunmak bir web sitesi için olmazsa olmazdır. Kullanıcı etkileşiminin bir parçası olan dosya yüklemek de bu işlemin bir parçasıdır.
Bu yazıda PHP dosya yükleme işlemini yeni yöntemlerle nasıl yapılacağı anlatılacaktır. Klasik move_uploaded_file file metodunun kullanımını doğrudan yapmayıp, composer ile hazırlanmış kütüphaneler kullanarak daha esnek bir şekilde nasıl yapılacağı anlatılacak ve örnek uygulamanın sonunda dosyalar yazıya eklenecektir.
Kullandığım kütüphaneyi seçme sebebim. Kütüphane ile birlikte resimlere watermark (resimlere filigram) ekleme, resimleri yeniden boyutlandırma, resimlere yazı ekleme gibi özellikleri basit bir şekilde sunduğu içindir. Ayrıca farklı kütüphanelerle de kolay bir şekilde birleştirilebiliyor olması seçme nedenlerim arasındadır.
Yazıda composer kullanılacağı için bilgisayarınızda composer kurulu olması gerekir. Composer yüklü değilse 5dk ayırarak composer nasıl kurulur ve composer nasıl kullanılır yazısını okumanızı tavsiye ederim.
PHP Dosya Yükleme
1. Adım: https://packagist.org sitesinde upload kelimesi ile arattığımızda karşımıza birçok dosya yükleme kütüphanesi çıkacaktır. İçinden en basit olan PHP dosya yükleme kütüphanesini seçip class.upload.php adındaki gerekli kütüphaneyi projeye dahil ediyoruz.
1 2 3 |
composer require verot/class.upload.php |
2. Adım: Dosya yükleme için gerekli HTML belgesini aşağıdaki gibi oluşturuyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<!doctype html> <html> <head> <meta charset="utf-8"> <title>Yazılım Bilişim - Dosya Yükleme</title> </head> <body> <form enctype="multipart/form-data" method="post" action="dosya_yukle.php"> <input type="file" name="belge"> <input type="submit" name="dosya_kaydet" value="Dosya Yükle"> </form> </body> </html> |
3.Adım: formdaki butona tıklandığında gönderilecek dosya_yukle.php sayfasını aşağıdaki gibi hazırlıyoruz.
İlk olarak autoload dosyasını dahil etip, composer ile yüklediğimiz kütüphaneleri aktif hale getiriyoruz.
Sonraki aşamada class.upload.php dosyasının sayfasından kütüphanenin kullanımına bakıp, yükleme işlemini gerçekleştiren kodları hazırlıyoruz.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
<?php /*composer kütüphanelerini dahil etme*/ require 'vendor/autoload.php'; //yüklenecek olan dosyayı upload metoduna parametre olarak gönderiyoruz $dosya = new upload($_FILES['belge']); //dosya yükleme işlemini yapıyoruz. if ($dosya ->uploaded) { //aynı isimde dosya varsa dosyayı yeniden adlandırıp atıyor. $dosya->file_auto_rename = true; //dosyalraın yükleneceği klasörü seçiyoruz. $dosya ->process('dosyalar/'); echo $dosya->file_dst_name." adında kaydedildi"; } |
İndir: PHP Dosya yükleme Uygulaması
PHP Resme Watermark Ekleme
Bu kütüphanenin güzel bir özelliği de resim dosyalarına watermark ekleme özelliğinin olması. Sadece watermark dosyasının yolunu göstermek yeterli. İstenilirse de watermark ekleme yeri ve seçenekleri ile ilgili ek düzenlemeler yapmak mümkün.
PHP WaterMark Yapımı
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
<?php /*composer kütüphanelerini dahil etme*/ require 'vendor/autoload.php'; //yüklenecek olan dosyayı upload metoduna parametre olarak gönderiyoruz $dosya = new upload($_FILES['belge']); //dosya yükleme işlemini yapıyoruz. if ($dosya ->uploaded) { //watermark ekleme $dosya->image_watermark = 'dosyalar/watermark.png'; //aynı isimde dosya varsa dosyayı yeniden adlandırıp atıyor. $dosya->file_auto_rename = true; //dosyalraın yükleneceği klasörü seçiyoruz. $dosya ->process('dosyalar/'); echo $dosya->file_dst_name." adında kaydedildi"; } |
İndir: PHP WaterMark Ekleme
teşekkürler güzel paylaşımınız için