PDA

View Full Version : سوال: مشکل با آپلود



iner30
چهارشنبه 24 خرداد 1391, 10:48 صبح
سلام خدمت دوستان
کد زیر کد html آپلود فایل هستش...
میشه یه نگاهی بندازین ببینین کجاش مشکل داره که نمیتونم باش فایل بیشتر از 7 مگابایت ارسال کنم؟
تنظیمات php.ini هم روی 40 مگابایت ست شده ، و خودم هم محدودیتی واسه حجم نذاشتم ...
هم روی هاست اینجوری هست و هم روی لوکال
خیلی ضروریه اگه زودتر کمک کنید ...



<form action="" method="POST" enctype="multipart/form-data">
<br />
<label>بخش های یک پروژه:</label>
<select name="kind" class="selectbox">
<option value="">انتخاب نمایید</option>
<option value="text">متن</option>
<option value="search">جستجو</option>
<option value="presentation">ارائه</option>
<option value="evaluation">ارزیابی</option>
<option value="other">سایر</option>
</select>
<br />
<p class="text">
<label>انتخاب فایل:</label>
<input type="file" name="upfile[]" class="upfilefilde" size="50"/>
</p>

iner30
چهارشنبه 24 خرداد 1391, 14:44 عصر
لطف کنید راهنمایی کنید
عجله ای شده...

plague
چهارشنبه 24 خرداد 1391, 14:52 عصر
کد php رو باید بزاری نه فرم html رو !

iner30
چهارشنبه 24 خرداد 1391, 15:25 عصر
از این جهت فایل php نذاشتم چون اصلا اطلاعات ارسال نمیشه ، وقتی من ارسال فایل رو میزنم مثل اینکه صفحه رو رفرش کنم هیچی تغییر نمیکنه (البته این حالت واسه فایل های بالای 7 مگابایت پیش میاد ، کمتر از اون هیچ مشکلی نیست)
ولی با این حال اینم فایل php


include('header.php');
if (!isset($_POST['submit-upload'])){
include('form/form_up.php');
}else{
$numbername=$_SESSION['number'];
$user_id=$_SESSION['userid'];
$lesson= $_POST['lesson'];
$kind= $_POST['kind'];
$tozihat=$_POST['tozihat'];
$data=strftime("%Y,%m,%d");
$payam="";
if ($lesson==null || $kind==null){
$payam="فرم را به صورت کامل پر نمایید.";
}else{
echo "d";
foreach ($_FILES["upfile"]["error"] as $key => $error)
{
if ($error == UPLOAD_ERR_OK)
{
// baresi formate file va taghir name
$file_name_old=$_FILES["upfile"]["name"][$key];
$position_node=strrpos($file_name_old,".");
$format=strrchr($file_name_old,".");
if ($format==".rar" or $format==".zip"){
$query=mysql_query("select file_id from file order by file_id DESC");
$file_id_new=mysql_result($query,0)+1;
$name_new=$kind.'-'.$file_id_new.$format;
$size=round($_FILES["upfile"]["size"][$key]/1048576, 2);

if (!is_dir("files/$lesson/$numbername")) {
mkdir("files/$lesson/$numbername" , 0755);
}

$name ="files/$lesson/$numbername/".$name_new;
if (move_uploaded_file($_FILES["upfile"]["tmp_name"][$key], $name))
{
mysql_query("INSERT INTO file(file_id,file_user_id,file_tozihat,file_lesson ,kind,file_format,file_size,file_show_user) VALUES ('$file_id_new','$user_id','$tozihat','$lesson','$ kind','$format','$size','1')");
$payam=$payam."<h2>پروژه شما با موفقیت ارسال گردید.</h2>";
}
}else{
$payam=$payam."<br />فرمت فایل ارسالی مجاز نمیباشد.";
}
}else{
$payam=$payam."<br />فایل مورد نظر را انتخاب کنید.";
}
}
}
if ($payam==""){
$payam="آپلود فایل موفقیت آمیز نبود";
}
echo $payam;
include('form/form_up.php');
}

include('footer.php');

iner30
چهارشنبه 24 خرداد 1391, 18:29 عصر
خب چرا کسی جواب نمیده...!!!

hamed-php
چهارشنبه 24 خرداد 1391, 18:45 عصر
سلام
خط 28 برای چی هست؟

iner30
چهارشنبه 24 خرداد 1391, 19:03 عصر
سایز فایل رو اندازه گیری میکنه ، که ذخیره کنه...
دوستان این کد وقتی حجم فایل بالا باشه اصلا به اونجا نمیرسه ، میتونین با دستور چاپ چک کنین...

iner30
چهارشنبه 24 خرداد 1391, 23:10 عصر
فکر کنم بازم بی جواب میمونه سوالم...

MMSHFE
پنج شنبه 25 خرداد 1391, 11:02 صبح
تو php.ini باید هم upload_max_filesize و هم post_max_size رو افزایش بدین.

iner30
پنج شنبه 25 خرداد 1391, 11:21 صبح
خدا خیرتون بده
میگن کار باید سپرد دست کاردون ، راست میگن