【发布时间】:2015-01-20 08:25:28
【问题描述】:
您好,我想上传多个文件并将多个文件名存储在数据库中。 它正在正确上传文件,但没有在一列中存储多个文件名, 例如如果我要上传两个文件,因此它将两个文件名存储在两个新列中,但我想将两者都存储在同一列中。
注意: 这是我用来上传文件名的代码
foreach($filepath as $a) {
$a['file_name'].=",";
echo $a['file_name'];
$db_data = array('pic_id'=> NULL,
'ad_pic'=> $a['file_name']);
$this->db->insert('pics',$db_data);
}
我的控制器
<?php
class upload extends CI_Controller {
function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
}
function index()
{
$this->load->view("main_temp/header.php");
$this->load->view('first_body');
$this->load->view("main_temp/footer.php");
}
// controller
function do_upload()
{
$config['upload_path'] = './uploads/';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = '100';
$config['max_width'] = '1024';
$config['max_height'] = '768';
$this->load->library('upload', $config);
if($this->input->post('submit'))
{
$path = './uploads';
if($this->upload->do_multi_upload("myfile")){
echo '<pre>';
print_r($this->upload->get_multi_upload_data());
echo '</pre>';
$this->load->model('mypost');
$this->mypost->post();
}
}else{
$this->load->view("main_temp/header.php");
$this->load->view('upload_f');
$this->load->view("main_temp/footer.php");
}
}
}
?>
我的模特
<?php
class mypost extends CI_Model
{
function post()
{
$filepath =$this->upload->get_multi_upload_data('file_name');
foreach($filepath as $a) {
$a['file_name'].=",";
echo $a['file_name'];
$db_data = array('pic_id'=> NULL,
'ad_pic'=> $a['file_name']);
$this->db->insert('pics',$db_data);
}
$title=$_POST['title'];
$description=$_POST['description'];
$category=$_POST['category'];
$this->db->trans_begin();
$this->db->query("insert into post (title,detail)
values ('$title','$description')");
$ad_id = $this->db->insert_id();
$this->db->query("insert into category (cat_type,post_id_fk)
values ('$category', $ad_id)");
if ($this->db->trans_status() === FALSE)
{
$this->db->trans_rollback();
}
else
{
// echo "<h1> Hurrah! </h1> <br> Data has been saved";
$this->db->trans_commit();
}
}
}
?>
【问题讨论】:
标签: php mysql codeigniter upload