نقل قول نوشته اصلی توسط amirmahdi نمایش پست ها
ممنون بابت راهنمایی. فکر می کنم مشکل از حجم فایل باشه. به هر حال من خودم مشغول تستم و اگر چیزی در اومد حتما خبر میدم. فقط یک سوال : هردفعه باید اون عدد رو ببریم بالاتر ؟ منظورم 1.07 هست ولی خب من خودم js کار کردم و این قطعه کد فکر کنم به دردتون بخوره قبل از رسیدن مودم تا راهنمایی کنید :


fileuploadsubmitclickhandler = function () {
var versiondata = service.getdeviceversion().real_device_version;
var filename = $(".customfile").attr('title');
var accountpower = service.getstatusinfo().accountpower == '1';

if (typeof filename == "undefined" || filename == '' || filename == $.i18n.prop("no_file_selected")) {
showalert("sd_no_file_selected");
return false;
} else {
//judge size
//todo check filename
fileext = filename.substring(filename.lastindexof(".")).tolo wercase();

if (!fileext.match(/.zip/i) && !fileext.match(/.rar/i) && !fileext.match(/.bin/i) && !accountpower) {
showalert("error_file_selected");
return false;
}

var filesize = getfilesize($("#filefield")[0]);
if ((filesize / 1024 / 1024 > 30) || (filesize / 1024 / 1024 < 1)){ //no more than m
showalert("error_file_selected");
return false;
}
}

// 系统升级
if(accountpower){
if(fileext.match(/.bin/i))
{
// 模块升级
$("#fileuploadform").attr("action", "/cgi-bin/zte_upload/upload.cgi");
}
else
{
$("#fileuploadform").attr("action", "/cgi-bin/sys_update/" + filename);
}
}
else if((fileext.match(/.zip/i) || fileext.match(/.rar/i))){
var canupdatedesc = !service.itemfuncmode(itemsfunclist.system_update) ;
var moduletype = filename.substring(0, filename.indexof('_')).tolowercase();
var fdstart = versiondata.substring(0, versiondata.indexof('_')).tolowercase();

if(("p21k" == fdstart) && ("p21" == moduletype))
{

}
else if (fdstart != moduletype)
{
showalert("error_file_selected");
return false;
}

if (!canupdatedesc) {
var newver = filename.substring(filename.lastindexof("_") + 1, filename.length - fileext.length);

if (!isstringinchars(newver, '0123456789.')) {
showalert("error_file_selected");
return false;
}
var oldver = versiondata.substring(4, versiondata.length);
var nnv = newver.split(".");
if (nnv.length > 3) {
showalert("error_file_selected");
return false;
}
var oov = oldver.split(".");
var count = nnv.length < oov.length ? Nnv.length : Oov.length;
var index;
for (index = 0; index < count; index++) {
var p1 = parseint(nnv[index]);
var p2 = parseint(oov[index]);

if (nnv[index].length > 10 || p2 > p1) {
showalert("high_upgrade_file");
return false;
}
else if (p1 > p2) {
break;
}
}
}
$("#fileuploadform").attr("action", "/cgi-bin/sys_update/" + filename);
}

ممنون بله بدر بخور هست کد فقط زحمت بکشید کذهای طولانی رو برای خوانایی بیشتر تو اسپویلر بزارید
البته یه سری متغیر ها توی لود صفحه مقدار گذاری میشه که دقیقترش رو توی مودم میشه بررسی کرد
نه نیازی به بالا بردن نسخه نیست
معمولا مودم برای نصب نسحه پارامتر اول نام فایل اپدیت رو چک میکنه اگر با مودم سازکار بود اجاره نصب فایل رو میده که برای ایرانسل ARG بود که ابتدای نام فایل اپدیت گذاشتیم
حالا ممکنه فریمور بوتل مورد یا مقدار دیگه ای رو چک میکنه برا سازگاری حالا اگر خودتون بهش رسیدید که اعلام کنید اگر نه به محض اینکه مودم دستم برسه اطلاعات رو قرار میدم