Php Dosya Yükleme Sorunu ve Çözümü

Uzman Cevap’da sıkça sorulan sorulardan bir tanesi, aynı sayfada dosya yükleme işleminin nasıl yapıldığıydı.. Yani sorun şu ki, başka bir sayfaya gönderince dosya yükleme işlemi oluyor ama aynı sayfada yapınca olmuyor.. En azından bilmeyenlerin düşündüğü durum budur ???? Peki aslı astarı nedir bu olayın?

Şimdi büyük ihtimalle sizde böyle bir sorunla karşılaştıysanız yaptığınız işlem şudur;

if ($_POST)
{
     // dosya yükleme işlemi
}

Ve html kodunuzda şöyle olsun;

<form action="" method="post" enctype="multipart/form-data">
	Dosya: <input type="file" name="dosya" /> <button type="submit">Yükle</button>
</form>

Burada siz dosyaları seçip gönderseniz bile işlem yapmayacaktır.. Çünkü herhangi bir değer göndermiyorsunuz, yani tipi file olan input dışında bir değer göndermiyorsunuz..

Çözümü;
En basit olarak submit butonuna name vermeniz yeterli olacaktır ????

<form action="" method="post" enctype="multipart/form-data">
	Dosya: <input type="file" name="dosya" /> <button name="submit" type="submit">Yükle
</form>

Bu şekilde çözüme ulaşabilir, aynı dosya içerisinde upload işlemini sorunsuz bir şekilde yapabilirsiniz.. Elbette her upload sorunu bu olacak değil ama bu sorunla çok fazla karşılaşıldığı için bilgilendirme amaçlı yazıyorum bu yazımı ???? görüşmek üzere.