PHP Dosya Yükleme (Upload)

  • 03-07-2020 03:42
  • 155

Web sayfalarında dosya yükleme sıklıkla kullanılır. Web sitesinde kullanılacak resim ve videoların kullanıcı tarafından sunucuya yüklemesi (upload) gerekebilir. Bu gibi durumlarda PHP ve HTML dilleri kullanılarak bir dizi işlemle dosya gönderme işlemi yapılır. Bu işlemler için iki ayrı sayfa hazırlanır, ilk sayfa dosyanın gönderileceği formdan oluşur. İkinci sayfa ise PHP ile hazırlanır, POST yöntemi ile gönderilen dosya PHP kodu ile sunucu üzerine kaydedilir.

HTML Dosya Gönderme Formu

Dosya gönderme formunda bulunması zorunlu 2 input elementi bulunur ilki yüklenecek dosya için file tipinde, ikincisi form verisini göndermek için kullanılacak submit tipinde gönder butonu.

HTML dosya gönderme form örneği:


<!DOCTYPE html>
<html> <body> <form action="test.php" method="POST" enctype="multipart/form-data" > <input name="ufile" type="file" /><br><br> <input type="submit" value="Upload" /> </form> </body> </html>

 

PHP Dosya Kaydetme Kodu

PHP dosya kaydetme örneği: Örneğin çalışabilmesi için bu içeriği test.php olarak kaydedin.


<!DOCTYPE html>
<html> <body> <?php if(isset($_FILES["ufile"])){ $tmp_name = $_FILES["ufile"]["tmp_name"]; $name = $_FILES["ufile"]["name"]; $file_path = $name; if(move_uploaded_file($tmp_name, $file_path)){ echo 'Dosya yüklendi.'; }else{ echo 'Dosya yüklemede hata.'; } unlink($tmp_name); } ?> </body> </html>

 

Örnek kod doğru şekilde çalıştığında test.php doyasının bulunduğu klasöre seçilen dosya ile aynı isimle dosya yüklenir. Eğer dosyayı farklı bir isimle kaydetmek isterseniz yüklemeden önce $file_path değişkenine istediğiniz dosya ismini verebilirsiniz.