我从两个单独的视图上传图片,所以在图书馆的自动加载中,我已经包含上传。
我在config中有一个名为upload.php的文件。从这里我传递大小,文件类型等参数。
if( ??){
$config['upload_path'] = realpath('x');
$config['allowed_types'] = 'gif';
$config['max_size'] = '1048';
$config['max_width'] = '1024';
$config['max_height'] = '768';
}
else{
$config['upload_path'] = realpath('x');
$config['allowed_types'] = 'gif';
$config['max_size'] = '1048';
$config['max_width'] = '1024';
$config['max_height'] = '768';
}
既然我上传了两个地方,我有不同的文件大小,类型参数,我的控制器如何知道要采取哪一个。如果{} else {]条件,我应该放什么。
请告诉我,如果我不清楚的话。
答案 0 :(得分:0)
在upload.php中
$config['first']['upload_path'] = realpath('x');
$config['first']['allowed_types'] = 'gif';
$config['first']['max_size'] = '1048';
$config['first']['max_width'] = '1024';
$config['first']['max_height'] = '768';
类似于第二次
$config['second']['upload_path'] = realpath('x');
....
..
和控制器
$this->load->config('upload_values', TRUE);
$upload_values = $this->config->item('first');
$this->load->library('upload', $upload_values);
答案 1 :(得分:0)
您的代码必须执行以下操作:
(1)你需要在每个上传表单中设置一个标志(隐藏变量是一种好方法)
知道存储文件的文件夹。让我们调用此标志upload_target
在您的控制器中:
(2)从帖子变量中获取upload_target
(3)根据值upload_target
,根据需要设置upload_config值
然后加载/初始化上传类。
放置upload_config
值的位置
如果你尝试在config / upload.php中定义一个二维数组,那么库加载器可能会感到困惑。
相反,定义一个名为upload_settings.php
的配置文件并定义以下数组:
$config['target1']['upload_path'] = './uploads_path_1/';
$config['target1']['allowed_types'] = 'gif|jpg|png';
$config['target1']['max_size'] = '100';
$config['target1']['max_width'] = '1024';
$config['target1']['max_height'] = '768';
$config['target2']['upload_path'] = './uploads_path_2/';
$config['target2']['allowed_types'] = 'gif|jpg|png';
$config['target2']['max_size'] = '100';
$config['target2']['max_width'] = '1024';
$config['target2']['max_height'] = '768';
在您的上传控制器中,您将执行以下操作:
$this->config->load('upload_settings', TRUE);
取决于您从表单的post变量获得的upload_target
的值:
$upload_config_values = $this->load->config('target1','upload_settings');
或
$upload_config_values = $this->load->config('target2','upload_settings');
您现在可以加载或初始化您的上传课程:
$this->load->library('upload', $upload_config_values);
我把它写成元代码,为你提供一个可行方法的概述。
设置隐藏值标记/参数
对于用于上传文件的每个表单,请按如下方式添加隐藏值
对于第一种形式:
和第二种形式:
从帖子变量中获取upload_target
值,并根据值选择正确的配置文件。