Php Dosya Yükleme Sorunu Nasıl Çözülür?

Şimdi ilk önce problemi tanımlayalım. Geçen aylarda aynı sayfada dosya yükleme işlemi yaptığımda veriler veritabanına kaydoluyor ancak resim dosyası yüklenmiyordu. Daha sonra dikkat hatasından dolayı olduğunu fark ettim. Aynı sorun sizde de oluşursa diye çözümü sizinle paylaşma gereği duydum. Ama dikkat edin yazacağım çözüm aynı php sayfası içerisinde yükleme hatası olan kullanıcılar içindir.
Formunuz büyük ihtimalle şöyle:
 
<form action="" method="post" enctype="multipart/form-data">

Dosya: <input type="file" name="PictureFile" id="PictureFile" />

<input type="submit" value="Yükle">

</form>


  Ve hemen bu formun yukarısında şu işlemi gerçekleştirdiniz:
 
if ($_POST){
     // dosya yükleme işleminin yapılacağı kodlar
}

 

Bunun sebebi post ettiğiniz "submit" butonunun hiçbir değer taşımaması. Yani post edilecek bir submit değeri göndermiyorsunuz. Bunun için yapmanız gereken tek şey submit butonuna name ve id değeri vermeniz. Gerçi sadece name yeterli ama ben projelerimde id değeri kullanmaya alıştığım için onu da ekledim. Kodunuz aşağıdaki gibi olmalıdır:
 

<form action="" method="post" enctype="multipart/form-data">

Dosya: <input type="file" name="PictureFile" id="PictureFile" />

<input type="submit" value="Yükle" name="BtnFile" id=" BtnFile ">

</form>

 

Tekrar etmek isterim her upload sorununun çözümü yukarıdaki yöntem değildir. Sadece aynı php sayfası içerisinde yapılan post işleminde bu hata oluşur. Siz zaten name değeri atamışsanız o halde hatanız post içindeki kodlardan kaynaklanıyor. O zaman bu çözüm işinize yaramaz. Hayırlı çalışmalar.



Alice: Hangi yoldan gideyim?
Kedi: Nereye gittiğini bilmiyorsan, hangi yoldan gittiğinin bir önemi yok!

En Son Yapılan Yorumlar