PDA

View Full Version : میخوام این فرمتا اپلود بشن pg, .gif, .jpeg, .png, .pdf, .pbk, .bmp, .txt, .xlsx, .xls, .doc, .docx,



saeed-71
سه شنبه 20 خرداد 1393, 16:23 عصر
سلام.
pg, .gif, .jpeg, .png, .pdf, .pbk, .bmp, .txt, .xlsx, .xls, .doc, .docx, jpg, jepg, gif, png, pdf, bmp, txt, doc, docx, pbk ،
شل اپلود نشه!
برای عکس میدونم چیکار کنم اما بقیه موارد نه

Mohammadsgh
سه شنبه 20 خرداد 1393, 16:31 عصر
با

$_FILES['name']['type']
میتونی.با تابع explodeوemplode میتونی خلاصه ترش کنی.خواستی بگو بهت بگم:لبخندساده:

saeed-71
سه شنبه 20 خرداد 1393, 17:03 عصر
ممنون میشم اگه بگید

id1385
سه شنبه 20 خرداد 1393, 22:41 عصر
با سلام
بهترین کار اینه که شما طرف کاربر اعتبار سنجی ها را انجام دهید
جیکوئری بهترین مورد برای این کار می باشد.


$('.psd_files #userFile').each(function() {
i++;
var allowed_ext = Array('jpg', 'png', 'gif');
var the_val = $(this).val();
the_val = the_val.split('\\');
the_val = the_val[the_val.length - 1];
var ext = the_val.split('.');
ext = ext[ext.length - 1].toLowerCase();
if (the_val === '' || (jQuery.inArray(ext, allowed_ext) < 0)) {
errors[errors.length] = files_lable[i];
}


});

MRmoon
سه شنبه 20 خرداد 1393, 23:03 عصر
با سلام
بهترین کار اینه که شما طرف کاربر اعتبار سنجی ها را انجام دهید
جیکوئری بهترین مورد برای این کار می باشد.


$('.psd_files #userFile').each(function() {
i++;
var allowed_ext = Array('jpg', 'png', 'gif');
var the_val = $(this).val();
the_val = the_val.split('\\');
the_val = the_val[the_val.length - 1];
var ext = the_val.split('.');
ext = ext[ext.length - 1].toLowerCase();
if (the_val === '' || (jQuery.inArray(ext, allowed_ext) < 0)) {
errors[errors.length] = files_lable[i];
}


});


حالا اگه طرف جاوا اسکرپتش رو هم غیر فعال کرد که دیگه بیخیال شل رو آپلود کرده :چشمک:

cpuram
چهارشنبه 21 خرداد 1393, 00:16 صبح
هر دو طرف باید چک بشه. سمت کاربر برای اینکه هم وقت کاربر تلف نشه هم منابع سرور الکی هدر نره.
فایلهایی رو که میخوای آپلود بشه .پسوندها رو بریز توی یک ارایه بعد چک کن توش هست یا نه.بعدش موقع ثبت فایل خودت پسوند رو بزار مستقیم از اسمش ذخیره نکن.اگه هم میخوای از اسمش استفاده کنی هر چی نقطه توش هست رو به آندرلاین تبدیل کن.

lord_viper
چهارشنبه 21 خرداد 1393, 08:26 صبح
استفاده از پسوند خیلی مناسب نیست چون با یک تغییر نام ساده میشه اونو دور زد استفاده از mime هر چند 100% ایمن نیست ولی از چک کردن پسوند خیلی بهتره



$valid_mime_types = array(
"image/gif",
"image/png",
"image/jpeg",
"image/pjpeg",
);

// Check that the uploaded file is actually an image
// and move it to the right folder if is.
if (in_array($_FILES["file"]["type"], $valid_mime_types)) {
$destination = "uploads/" . $_FILES["file"]["name"];
move_uploaded_file($_FILES["file"]["tmp_name"], $destination);
}