آپلود چندگانه فایل با PHP
آپلود چندگانه فایلها به کاربران این امکان را میدهد که بهطور همزمان چندین فایل را به سرور ارسال کنند. برای پیادهسازی این قابلیت در PHP، مراحل مختلفی وجود دارد.
۱. فرم HTML
ابتدا باید یک فرم HTML برای انتخاب فایلها ایجاد کنید. این فرم باید ویژگی `enctype` را به `multipart/form-data` تنظیم کنید.
```html
<form action="upload.php" method="post" enctype="multipart/form-data">
<input type="file" name="files[]" multiple>
<input type="submit" value="آپلود">
</form>
```
۲. پردازش فایلها در PHP
سپس در فایل `upload.php`، شما باید فایلهای ارسالشده را پردازش کنید. برای این کار از آرایه `$_FILES` استفاده میکنیم.
```php
if (isset($_FILES['files'])) {
$errors = [];
$path = 'uploads/'; // مسیر ذخیره فایلها
foreach ($_FILES['files']['tmp_name'] as $key => $tmp_name) {
$file_name = $_FILES['files']['name'][$key];
$file_tmp = $_FILES['files']['tmp_name'][$key];
$file_size = $_FILES['files']['size'][$key];
$file_type = $_FILES['files']['type'][$key];
// بررسی خطاهای آپلود
if ($file_size > 2097152) { // حداکثر ۲ مگابایت
$errors[] = "$file_name بزرگتر از ۲ مگابایت است.";
continue; // ادامه به فایل بعدی
}
// انتقال فایل به مسیر مورد نظر
if (empty($errors)) {
move_uploaded_file($file_tmp, "$path$file_name");
}
}
// نمایش خطاها
if (!empty($errors)) {
foreach ($errors as $error) {
echo $error . "<br>";
}
} else {
echo "تمامی فایلها با موفقیت آپلود شدند!";
}
}
```
نکات مهم
- محدودیت حجم: بررسی حجم فایلها ضروری است. در این مثال، حداکثر حجم ۲ مگابایت تعیین شده است.
- انتقال فایل: برای انتقال فایل، از تابع `move_uploaded_file` استفاده میشود. مسیر ذخیرهسازی باید معتبر باشد.
- امنیت: به خاطر داشته باشید که آپلود فایلها میتواند خطرناک باشد. بهتر است نوع فایلها را بررسی کنید و از نامهای تصادفی برای ذخیره فایلها استفاده کنید.
با رعایت این نکات و استفاده از کد بالا، شما میتوانید قابلیت آپلود چندگانه فایلها را با PHP بهراحتی پیادهسازی کنید.