PHP Formlar Aracılığı İle Dosya Gönderme Ve Veri Alma Yöntemleri

Dosya gönderme işlemi, HTML formu aracılığıyla kullanıcıdan dosya almak ve bu dosyayı bir sunucuya iletmek için kullanılır. Bu işlem genellikle enctype="multipart/form-data" özelliği ile belirtilir. PHP'de bu dosyayı almak ve işlemek için $_FILES süper global değişkeni kullanılır.

Aşağıda, dosya gönderme ve veri alma örneği bulunmaktadır:

HTML Form Oluşturma (dosya_formu.html)

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Dosya Gönderme Formu</title> </head> <body> <form action="dosya_isle.php" method="post" enctype="multipart/form-data"> <label for="dosya">Dosya Seç:</label> <input type="file" id="dosya" name="dosya" required> <br> <label for="aciklama">Açıklama:</label> <textarea id="aciklama" name="aciklama" rows="4" cols="50"></textarea> <br> <input type="submit" value="Gönder"> </form> </body> </html>

PHP Dosya İşleme (dosya_isle.php)

<?php if ($_SERVER["REQUEST_METHOD"] == "POST") { // Formdan gelen verileri alma $dosya = $_FILES["dosya"]; $aciklama = $_POST["aciklama"]; // Dosya işlemlerini gerçekleştirme $dosyaAdi = $dosya["name"]; $dosyaBoyutu = $dosya["size"]; $dosyaTipi = $dosya["type"]; $dosyaGeciciYolu = $dosya["tmp_name"]; // Dosyayı istenen konuma taşıma $hedefYolu = "uploads/" . $dosyaAdi; move_uploaded_file($dosyaGeciciYolu, $hedefYolu); // Verileri ekrana yazdırma echo "Dosya Adı: " . $dosyaAdi . "<br>"; echo "Dosya Boyutu: " . $dosyaBoyutu . " bytes<br>"; echo "Dosya Türü: " . $dosyaTipi . "<br>"; echo "Açıklama: " . $aciklama . "<br>"; echo "Dosya başarıyla yüklendi."; } ?>

Yukarıdaki örnekte, formdaki dosya inputu için enctype="multipart/form-data" kullanılmış ve PHP tarafında $_FILES süper global değişkeni kullanılarak dosya bilgilerine erişilmiştir. move_uploaded_file() fonksiyonu ile dosya belirtilen hedefe taşınmıştır. Bu işlemler, dosya gönderme işlemlerinde yaygın olarak kullanılan temel yöntemlerdir.



Yorum Ekle

Üzerine gel