Input File Count Değer
<input type="file" name="Files[]" id="File" multiple />
Bu input'u Post ettiğimde, Post sayfasında;
$Count_File = count($_FILES["Files"]["name"]);
$Count_File değeri hiçbir dosya post edilmese dahi "1" olarak geliyor. Mantık olarak boş, tanımsız, yada "0" olması gerekmezmi yoksa bir mantık hatasımı yapıyorum!
Soruyu beğendin mi? 👍
Soruyu puanlayarak bu platformu daha kaliteli hale getirmemize yardımcı olabilirsin!
Cevaplar
Hocam yardımlarınız için tşk.ler şu şekilde kullanmak gerekiyormuş "stackoverflow" da buldum çözümü. Eğer Dosya seçili değilse "0" seçili ise "Dosya Sayısını" döndürüyor.
$Count_File = count(array_filter($_FILES["Files"]["name"]));
Amacın gerçeten dosya sayısınımı saydırmak yoksa dosya seçilmediğini mi anlamak?
dosya seçilmediğini anlamak ise;
if ($_FILES['Files']['error']!="0") {echo 'Dosya Seçmediniz'; }
Cevap için tşk.ler. Amacım dosya'nın seçilip seçilmediğini anlamak. Aşağıdaki gibi kullanıyorum. Ancak sonuç hep "Dosya Seçmediniz" olarak geri dönüyor.
if($_FILES["Files"]["error"] != "0"){
echo "Dosya Seçmediniz";
}else{
echo "Dosya Seçildi";
}
Birincisi ["Files"] buaradaki Files ismi dosyayı POST ettiğin sayfadaki name değeri ile aynı olacak.
İkincisi eğer sebep yukarıdaki değilse != kısmını == olarak ta deneme yanılma ile değiştirip deneyebilirsin.
Bu arada dosyayı post ettiğin sayafadaki form tagının içinde aşağıdaki örnekteki gibi enctype="multipart/form-data" bölümünün olduğuna dikkat et.
<form action='Process.php' method='POST' enctype="multipart/form-data">