PDA

View Full Version : سوال: مشکل در ارسال بیش از 5 ورودی به صورت آرایه در آپلود فایل



tem988
دوشنبه 17 بهمن 1390, 10:35 صبح
سلام
من یک آپلود عکس درست کردم که ورودی آپلود رو به صورت آرایه مشخص کردم به صورت زیر

<input type="file" name="file[]" />

ولی مشکلم اینه بیشتر از 5 تا ورودی آپلود میزارم از 5 به بعد دیگه ارایه ارسال نمیشه
یعنی اگر توی ورودی 6 عکس رو انتخاب کنند اصلا ارسال نمیشه

تعداد ارایه رو هم که میگیرم همیشه 5 میفرسته

echo count($_FILES['file']);
ممنون میشم راهنمایی کنید.

tux-world
دوشنبه 17 بهمن 1390, 11:08 صبح
چيزي كه براي آپلودر ست نكرديد؟ تعداد آرايه خيلي بيشتر از اين ميتونه باشه

MMSHFE
دوشنبه 17 بهمن 1390, 12:42 عصر
اگه میشه کد کامل صفحه آپلود رو بگذارین تا بهتر بشه بررسی کرد.

tem988
دوشنبه 17 بهمن 1390, 14:17 عصر
سلام
اینم کد کامل

if(@$_POST['submit']) {

$maxsize=1024*150; // 150 KB

$File1 = $_FILES['mypic'];
//$File = implode(',', $FileA);
//$File1 = explode(",",$File);
//echo count($File1);die();
for($f=0;$f<count($File1);$f++)
{
$file_ext = @substr($File1['name'][$f], strrpos($File1['name'][$f], ".") + 1);

$whitelist = array("jpg","jpeg","gif","png");


if(@$File1['name'][$f]){

$f1 = $f+1;

echo "File $f1 Upload Shod.<br>";

if (!(in_array($file_ext, $whitelist)))
{
echo 'فقط پسوندهای تایید شده را میتوانید آپلود کنید (jpg, jpeg, gif, png)<br>';
}else
{
if($File1['size'][$f] > $maxsize)
{
echo 'حجم عکس باید زیر 150 کیلو بایت باشد .<br>';
}else
{
@move_uploaded_file($File1['tmp_name'][$f], $File1['name'][$f]);
//$image = new SimpleImage();
//$image->load($File1['name'][$f]);
//$image->resize(150,150);
//$image->save($File1['name'][$f]);
echo 'OK';
}
}
}
}
}else{

?>

<form action="" method="post" enctype="multipart/form-data">
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="file" name="mypic[]" /><br>
<input type="submit" name="submit" value="Upload" />

</form>

<?php
}
?>


این کد رو هم روی لوکال تست کردم هم روی هاست ولی بیشتر از 5 تا دیگه ارسال نمیشه

MMSHFE
دوشنبه 17 بهمن 1390, 16:17 عصر
توی php.ini این خط رو پیدا کنید (اگه نبود، خودتون بنویسید) :
max_file_uploads = 5
و به جای 5 عدد دلخواه خودتون رو برای تعیین تعداد فایلهای قابل آپلود همزمان بگذارین. فایل رو ذخیره کرده و Apache رو مجدداً راه اندازی کنید.
موفق باشید.

tem988
سه شنبه 18 بهمن 1390, 11:33 صبح
سلام
ممنون ولی اینم جواب نداد.
خیلی عجیبه منم فکر میکردم از تنظیمات php.ini باشه ولی این خط داخلش نبود واضافه هم که کردم بازم جواب نداد آپاچ هم چند بار رست کردم.