UPLOAD MULTIPLE FILES IN PHP
برای آپلود همزمان چند فایل در PHP، باید مراحل خاصی را دنبال کنید. این فرایند شامل ایجاد فرم HTML، تنظیمات PHP و مدیریت فایلهای آپلود شده است. بیایید به تفصیل این مراحل را بررسی کنیم.
۱. ایجاد فرم HTML
ابتدا، یک فرم HTML بسازید که به کاربر اجازه میدهد چندین فایل را انتخاب و آپلود کند. برای این کار، از ویژگی `multiple` در تگ `<input>` استفاده کنید.
```html
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="files">Select files:</label>
<input type="file" name="files[]" id="files" multiple>
<input type="submit" value="Upload">
</form>
```
۲. تنظیمات PHP برای پردازش فایلها
در فایل `upload.php`، ابتدا باید بررسی کنید که آیا فایلها به درستی ارسال شدهاند یا خیر. سپس، میتوانید هر فایل را پردازش کنید.
```php
<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
foreach ($_FILES['files']['tmp_name'] as $key => $tmp_name) {
$file_name = $_FILES['files']['name'][$key];
$file_tmp = $_FILES['files']['tmp_name'][$key];
// بررسی نوع فایل
$allowed_extensions = ['jpg', 'png', 'gif', 'pdf'];
$file_ext = pathinfo($file_name, PATHINFO_EXTENSION);
if (in_array($file_ext, $allowed_extensions)) {
// مسیر ذخیره فایل
$upload_path = "uploads/" . basename($file_name);
if (move_uploaded_file($file_tmp, $upload_path)) {
echo "فایل $file_name با موفقیت آپلود شد.<br>";
} else {
echo "خطا در آپلود فایل $file_name.<br>";
}
} else {
echo "نوع فایل $file_name مجاز نیست.<br>";
}
}
} else {
echo "هیچ فایلی انتخاب نشده است.";
}
?>
```
۳. نکات امنیتی
برای جلوگیری از حملات احتمالی و تضمین امنیت، توجه به نکات زیر ضروری است:
- بررسی اندازه فایل: حداکثر حجم فایل را مشخص کنید.
- بررسی نوع فایل: فقط فایلهای مجاز را بپذیرید.
- ایجاد مسیر ذخیرهسازی امن: از مسیرهای مستقیم به دیتابیس و سرور خودداری کنید.
نتیجهگیری
آپلود همزمان چند فایل در PHP میتواند به سادگی انجام شود. با استفاده از فرم HTML و کد PHP مناسب، میتوانید فایلها را به راحتی مدیریت کنید. به یاد داشته باشید که امنیت را هرگز فراموش نکنید.