Örnek HTML Sayfası
<form action="dosya_upload.php" method="post" enctype="multipart/form-data">
<!-- Çoklu dosya yükleme girişi -->
<label for="dosyalar">Dosyaları Seçin:</label>
<input type="file" name="dosyalar[]" id="dosyalar" multiple>
<!-- Diğer verileri alacak girişler -->
<label for="indexsayfa_encoksatilan_urunadi">Ürün Adı:</label>
<input type="text" name="indexsayfa_encoksatilan_urunadi" id="indexsayfa_encoksatilan_urunadi">
<label for="indexsayfa_encoksatilan_urunozellikleri">Ürün Özellikleri:</label>
<textarea name="indexsayfa_encoksatilan_urunozellikleri" id="indexsayfa_encoksatilan_urunozellikleri"></textarea>
<!-- Diğer verileri alacak girişler -->
<!-- ... -->
<input type="submit" value="Gönder">
</form>
Örnek PHP Kodu
<?php
class FileUpload {
// Maksimum dosya boyutunu belirtilen birimlerde dönüştürür
public function getMaxSize($size) {
$units = ['B', 'KB', 'MB', 'GB', 'TB'];
for ($i = 0; $size > 1024; $i++) {
$size /= 1024;
}
return round($size, 2) . ' ' . $units[$i];
}
// Dosya yükleme işlemini gerçekleştir
public function upload($inputName, $uploadPath, $allowedTypes, $maxSize) {
// Formdan gelen dosya bilgilerini al
$files = $_FILES[$inputName];
// Dosyaları gez
for ($i = 0; $i < count($files['name']); $i++) {
// Dosya bilgilerini al
$name = $files['name'][$i];
$type = $files['type'][$i];
$tmpName = $files['tmp_name'][$i];
$error = $files['error'][$i];
$size = $files['size'][$i];
// Dosya yükleme işlemini gerçekleştir
if (!in_array($type, $allowedTypes)) {
// İzin verilmeyen dosya türü, hata mesajı ver
return 'İzin verilmeyen dosya türü.';
} elseif ($size > $maxSize) {
// Dosya boyutu çok büyük, hata mesajı ver
return 'Dosya ' . $this->getMaxSize($maxSize) . ' den büyük olamaz.';
} elseif (!move_uploaded_file($tmpName, $uploadPath . $name)) {
// Dosya yükleme işlemi başarısız, hata mesajı ver
return 'Dosya yükleme işlemi başarısız.';
}
}
// Dosya yükleme işlemi başarılı
return;
}
}
// FileUpload sınıfının bir nesnesini oluştur
$uploader = new FileUpload();
// İzin verilen dosya türlerini belirt
$allowedTypes = ['image/jpeg', 'image/png', 'image/jpg'];
// Dosya yükleme işlemini gerçekleştir
$uploaded = $uploader->upload('dosyalar', '', $allowedTypes, 1024 * 1024 * 3);
// Eğer dosya yükleme işlemi başarısız ise
if ($uploaded !== true) {
// Hata mesajını göster
echo $uploaded;
} else {
// Dosya yükleme işlemi başarılı, veritabanına kaydet
for ($i = 0; $i < count($_FILES['dosyalar']['name']); $i++) {
$name = $_FILES['dosyalar']['name'][$i];
/*$query = "INSERT INTO indexsayfaencoksatilanurun (indexsayfa_encoksatilanurun_resim,
indexsayfa_encoksatilanurun_urunadi,
indexsayfa_encoksatilanurun_urunozellikleri,
indexsayfa_encoksatilanurun_kategori,
indexsayfa_encoksatilanurun_eskifiyat,
indexsayfa_encoksatilanurun_yenifiyat)
VALUES('$name', '$indexsayfa_encoksatilan_urunadi', '$indexsayfa_encoksatilan_urunozellikleri',
'$indexsayfa_encoksatilan_kategori', '$indexsayfa_encoksatilan_eskifiyat',
'$indexsayfa_encoksatilan_yenifiyat')";*/
if (mysqli_query($db, $query) === TRUE) {
echo '<div style="margin-top:25px; text-align:center; font-size:35px;">
Kayıt Başarıyla Gerçekleştirildi</div>';
// header("refresh:2; url=indexsayfaencoksatilanurun.php");
} else {
echo '<div style="margin-top:25px; text-align:center; font-size:35px;">
Kayıt Başarısız. <br> Geldiğiniz Sayfaya Yönlendiriliyorsunuz.</div>';
// header("refresh:5; url=indexsayfaencoksatilanurun.php");
}
}
}
?>$uploaded = $uploader->upload('dosyalar', '
burası_yuklenecek_dizin', $allowedTypes, 1024 * 1024 * 3);