diff --git a/app/admin/controller/Common.php b/app/admin/controller/Common.php
index 7c656d1b1..6fe0ae829 100755
--- a/app/admin/controller/Common.php
+++ b/app/admin/controller/Common.php
@@ -241,6 +241,9 @@ class Common extends BaseController
// 后台公告
$admin_notice = MyC('admin_notice');
MyViewAssign('admin_notice', empty($admin_notice) ? '' : str_replace("\n", '
', $admin_notice));
+
+ // 系统环境参数最大数
+ MyViewAssign('env_max_input_vars_count', SystemService::EnvMaxInputVarsCount());
}
/**
diff --git a/app/admin/view/default/public/header.html b/app/admin/view/default/public/header.html
index 372c028af..ac5c4c40a 100755
--- a/app/admin/view/default/public/header.html
+++ b/app/admin/view/default/public/header.html
@@ -66,6 +66,7 @@
var __attachment_host__ = '{{$attachment_host}}';
var __currency_symbol__ = '{{$currency_symbol}}';
var __is_mobile__ = '{{if IsMobile()}}1{{else}}0{{/if}}';
+ var __env_max_input_vars_count__ = '{{$env_max_input_vars_count}}';
{{if $module_name.$controller_name.$action_name neq 'adminindexindex'}}
diff --git a/app/index/controller/Common.php b/app/index/controller/Common.php
index c03c2c865..ac881c27d 100755
--- a/app/index/controller/Common.php
+++ b/app/index/controller/Common.php
@@ -339,6 +339,9 @@ class Common extends BaseController
// 纯净模式
MyViewAssign('page_pure', in_array($this->controller_name.$this->action_name, ['usermodallogininfo']) ? 1 : 0);
+
+ // 系统环境参数最大数
+ MyViewAssign('env_max_input_vars_count', SystemService::EnvMaxInputVarsCount());
}
/**
diff --git a/app/index/view/default/public/header.html b/app/index/view/default/public/header.html
index cc181f74e..52c203ac3 100755
--- a/app/index/view/default/public/header.html
+++ b/app/index/view/default/public/header.html
@@ -74,6 +74,7 @@
var __user_id__ = {{if empty($user['id'])}}0{{else /}}{{$user.id}}{{/if}};
var __currency_symbol__ = '{{$currency_symbol}}';
var __is_mobile__ = '{{if IsMobile()}}1{{else}}0{{/if}}';
+ var __env_max_input_vars_count__ = '{{$env_max_input_vars_count}}';
diff --git a/app/install/controller/Common.php b/app/install/controller/Common.php
index f9bf5d3db..3e8c26dad 100755
--- a/app/install/controller/Common.php
+++ b/app/install/controller/Common.php
@@ -11,6 +11,7 @@
namespace app\install\controller;
use app\BaseController;
+use app\service\SystemService;
/**
* 安装程序-公共
@@ -34,6 +35,9 @@ class Common extends BaseController
{
// 当前方法
MyViewAssign('action', RequestAction());
+
+ // 系统环境参数最大数
+ MyViewAssign('env_max_input_vars_count', SystemService::EnvMaxInputVarsCount());
}
/**
diff --git a/app/install/view/public/header.html b/app/install/view/public/header.html
index 1b291a41f..2d43a1011 100755
--- a/app/install/view/public/header.html
+++ b/app/install/view/public/header.html
@@ -19,4 +19,7 @@
+
\ No newline at end of file
diff --git a/app/service/SystemService.php b/app/service/SystemService.php
index eae42e4be..62387d092 100644
--- a/app/service/SystemService.php
+++ b/app/service/SystemService.php
@@ -153,5 +153,18 @@ class SystemService
{
return MyConfig($key).'_'.SYSTEM_TYPE.'_'.RequestModule();
}
+
+ /**
+ * 获取环境参数最大数
+ * @author Devil
+ * @blog http://gong.gg/
+ * @version 1.0.0
+ * @date 2022-04-24
+ * @desc description
+ */
+ public static function EnvMaxInputVarsCount()
+ {
+ return intval(ini_get('max_input_vars'));
+ }
}
?>
\ No newline at end of file
diff --git a/public/static/common/js/common.js b/public/static/common/js/common.js
index a5ea675d3..68cc24e44 100755
--- a/public/static/common/js/common.js
+++ b/public/static/common/js/common.js
@@ -498,6 +498,26 @@ function FromInit(form_name)
return false;
}
+ // 请求参数
+ var form_data_count = 0;
+ var form_data = GetFormVal(form_name);
+ form_data.forEach(function(value, key)
+ {
+ form_data_count += 1;
+ });
+
+ // 请求参数是否超过系统环境参数
+ if(typeof(__env_max_input_vars_count__) != 'undefined')
+ {
+ var env_vars_count = parseInt(__env_max_input_vars_count__);
+ if(env_vars_count > 0 && form_data_count > env_vars_count)
+ {
+ $button.button('reset');
+ Prompt('请求参数数量已超出php.ini限制[max_input_vars]('+form_data_count+'>'+env_vars_count+')');
+ return false;
+ }
+ }
+
// ajax请求
$.AMUI.progress.start();
$.ajax({
@@ -505,7 +525,7 @@ function FromInit(form_name)
type: method,
dataType: "json",
timeout: $form.attr('timeout') || 60000,
- data: GetFormVal(form_name),
+ data: form_data,
processData: false,
contentType: false,
success: function(result)