我有一个工作多上传(文件和图像)CODEIGNITER
我在codeigniter中进行了多次上传,但我遇到了一个问题,那就是如何在两个表(documents and images table)上插入这些文件的文件名,这两个表有两个相同的列名(ID,name)。有没有办法,我可以分离或比较我的上传图像和文件的代码。因为我把它们统一在一个函数中 这是我的密码。它正在工作 看法我有一个工作多上传(文件和图像)CODEIGNITER,codeigniter,Codeigniter,我在codeigniter中进行了多次上传,但我遇到了一个问题,那就是如何在两个表(documents and images table)上插入这些文件的文件名,这两个表有两个相同的列名(ID,name)。有没有办法,我可以分离或比较我的上传图像和文件的代码。因为我把它们统一在一个函数中 这是我的密码。它正在工作 看法 图像 文件 控制器 function index() { if (isset($_POST['submit'])) { $this->l
图像
文件
控制器
function index()
{
if (isset($_POST['submit']))
{
$this->load->library('upload');
//$this->uploadfile($_FILES['userfile']);
$files = $_FILES;
$cpt = count($_FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
$filename = $_FILES['userfile']['name']= $files['userfile']['name'][$i];
$_FILES['userfile']['type']= $files['userfile']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['userfile']['error'][$i];
$_FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
$this->upload->data();
}
}
$this->load->view("test");
}
private function set_upload_options()
{
// upload an image and document options
$config = array();
$config['upload_path'] = './upload_documents/';
$config['allowed_types'] = 'jpg|png|gif|jpeg|JPG|PNG|GIF|JPEG|pdf|doc|docx|xls|xlsx';
$config['max_size'] = '0'; // 0 = no file size limit
$config['max_width'] = '0';
$config['max_height'] = '0';
$config['overwrite'] = TRUE;
return $config;
}
function index()
{
if (isset($_POST['submit']))
{
$this->load->library('upload');
//$this->uploadfile($_FILES['userfile']);
$files = $_FILES;
$cpt = count($_FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
$_FILES['userfile']['name']= $files['userfile']['name'][$i];
$_FILES['userfile']['type']= $files['userfile']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['userfile']['error'][$i];
$_FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
$this->upload->data();
$ext = pathinfo($filename, PATHINFO_EXTENSION);
$img_ext_chk = array('jpg','png','gif','jpeg','JPG','PNG', 'GIF', 'JPEG');
if (in_array($ext,$img_ext_chk))
{
$this->asset->add_image($filename);
}
else
{
$this->asset->add_document($filename);
}
}
}
}
函数索引()
{
如果(isset($_POST['submit']))
{
$this->load->library('upload');
//$this->uploadfile($_FILES['userfile']);
$files=$\u文件;
$cpt=计数($_文件['userfile']['name']);
对于($i=0;$iupload->initialize($this->set_upload_options());
$this->upload->do_upload();
$this->upload->data();
}
}
$this->load->view(“测试”);
}
私有函数集\上传\选项()
{
//上载图像和文档选项
$config=array();
$config['upload_path']='。/upload_documents/';
$config['allowed_types']=“jpg | png | gif | jpg | png | gif | jpg | jpeg | pdf | doc | docx | xls | xlsx”;
$config['max_size']=“0”;//0=无文件大小限制
$config['max_width']='0';
$config['max_height']='0';
$config['overwrite']=TRUE;
返回$config;
}
这些代码正在工作,它能够传输我所需路径上的所有文件。
但我想知道在制作模型时,我如何识别文件类型,正如您在上面看到的代码一样,我在变量“$filename”上传递了文件名。如果使用print_r($filename),您将看到所有文件名及其文件扩展名。这些名称是我将根据其文件类型插入到两个表中的名称
是否有CodeIgniter或PHP代码的代码,我将使用它们来识别文件类型并将其传递给具有两个功能(如upload_image或upload_docu)的模型?请提供帮助。就是这样
控制器
function index()
{
if (isset($_POST['submit']))
{
$this->load->library('upload');
//$this->uploadfile($_FILES['userfile']);
$files = $_FILES;
$cpt = count($_FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
$filename = $_FILES['userfile']['name']= $files['userfile']['name'][$i];
$_FILES['userfile']['type']= $files['userfile']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['userfile']['error'][$i];
$_FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
$this->upload->data();
}
}
$this->load->view("test");
}
private function set_upload_options()
{
// upload an image and document options
$config = array();
$config['upload_path'] = './upload_documents/';
$config['allowed_types'] = 'jpg|png|gif|jpeg|JPG|PNG|GIF|JPEG|pdf|doc|docx|xls|xlsx';
$config['max_size'] = '0'; // 0 = no file size limit
$config['max_width'] = '0';
$config['max_height'] = '0';
$config['overwrite'] = TRUE;
return $config;
}
function index()
{
if (isset($_POST['submit']))
{
$this->load->library('upload');
//$this->uploadfile($_FILES['userfile']);
$files = $_FILES;
$cpt = count($_FILES['userfile']['name']);
for($i=0; $i<$cpt; $i++)
{
$_FILES['userfile']['name']= $files['userfile']['name'][$i];
$_FILES['userfile']['type']= $files['userfile']['type'][$i];
$_FILES['userfile']['tmp_name']= $files['userfile']['tmp_name'][$i];
$_FILES['userfile']['error']= $files['userfile']['error'][$i];
$_FILES['userfile']['size']= $files['userfile']['size'][$i];
$this->upload->initialize($this->set_upload_options());
$this->upload->do_upload();
$this->upload->data();
$ext = pathinfo($filename, PATHINFO_EXTENSION);
$img_ext_chk = array('jpg','png','gif','jpeg','JPG','PNG', 'GIF', 'JPEG');
if (in_array($ext,$img_ext_chk))
{
$this->asset->add_image($filename);
}
else
{
$this->asset->add_document($filename);
}
}
}
}
我已经知道答案了。:)你可以发布答案,以便将来有人可以使用它。好的,当然:)我会发布它。我希望我能投赞成票:)我的帖子编辑完了。它已经有了answer@user2789695将答案作为答案发布,保留原始问题