رفع عدة ملفات او صور بواسطة لغة PHP بنفس الوقت

درس اليوم عن كيفية رفع عدة ملفات او صور بنفس الوقت من خلال لغة PHP ، بالنسبة لتحديد عدة ملفات يجب تضمين الخاصية multiple في عنصر الادخال بلغة HTML وايضا جعل قيمة الخاصية name تساوي اسم عنصر الادخال على شكل مصفوفة كــ Filename[] كما هو موضح في التالي
<input type="file" name="image[]" multiple  />

وبالنسبة للغة php نستخدم مصفوفة ثلاثية الابعاد بدلا من ثنائية بحيث البعد الثالث يحدد رقم الملف (index) واستخدمنا دوارة while loop للمرور على الملفات الموجودة بواسطة ال index $i ورفعها واحد تلو الاخر ولتطبيق ذلك اولا انشئ ملف باسم upload.php وضع الكود الاسفل داخله واحفظه في السيرفر المحلي وشغل الملف على المتصفح
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>
   upload image example
</title>
</head>
<body>

<form action="upload.php" method="post" enctype="multipart/form-data"  >
<input type="file" name="image[]" multiple  />
<input type="submit" value="upload Images" name="upload"/>
</form>
</body>
</html>


<?php
error_reporting(0);
$up= "upload/";
$i=0;
$t=array('image/jpeg' , 'image/png' , 'image/gif');
if($_POST['upload']=='upload Images')
{
  while($_FILES['image']['name'][$i] != null)
   {
    $fname = $_FILES['image']['name'][$i];
    $fsize = $_FILES['image']['size'][$i];
    $ftype = $_FILES['image']['type'][$i];
    $ftemp = $_FILES['image']['tmp_name'][$i];
    
    if($fname == '')
    {
        echo 'please enter a file';
    }
    elseif($fsize > 500000)
    {
        echo 'the file size is bigger than 5mb';
    }
    elseif(!in_array($ftype,$t))
    {
        echo 'the type of file is not allowed';
    }
    else
    {
        
        if(!file_exists('upload'))
         {
           mkdir('upload','777');
         }
         
        move_uploaded_file($ftemp, $up.$fname );
        echo 'the image: '.$fname.' is uploaded <br>';

    }
 $i++;
   }
}

?>

اقرأ ايضا:
برمجة واستخدام الكابتشا Captcha في مواقع الويب
كيفية التعامل مع ملفات الاكسل بلغة PHP
كيقية حذف الامتداد php بواسطة ملف htaccess

الى هنا انتهى الدرس والى درس جديد بإذن الله.
مواضيع ذات صلة

0 اترك تعليقاً...