我尝试搜索但没有成功我想将最多5张图片与用户表单数据一起上传到数据库。我有表格,其中所有用户数据的表格已保存以及上传的图片[图片上传附有用户表格]图片数据库中的字段命名为pic1,pic2,pic3 .. pic5 +电子邮件,密码等我成功将图像数据上传到数据库但不是图像。
// controller
if ($this->form_validation->run()!=true) {
$data['countryDrop'] = $this->Country_states_cities->getCountries();
$this->load->view('header');
$this->load->view('register',$data); //Display page
$this->load->view('footer');
}else{
$form=array();
$form['first_name']=$this->input->post("first_name",true);
$form['last_name']=$this->input->post("last_name",true);
$form['dob']=date('Y-m-d',strtotime($this->input->post("dob",true)));
$form['email']=$this->input->post("email",true);
$form['password']=sha1($this->input->post("password",true));
$form['phone']=$this->input->post("phone",true);
$form['addline2']=$this->input->post("addressline2",true);
$form['zip']=$this->input->post("zip",true);
$result = $this->Couch_reg->insert_new_user($form); //call to model
//模型
function insert_new_user($form)
{
$this->db->insert('tbl_usrs',$form);
if ($this->db->affected_rows() > 0) {
return true;
} else {
return false;
}
}
//查看
<input type="file" name="uploadfile[]" accept = "image/*" multiple = "multiple" size="20" /> <br />
因为我们可以看到模型部分很短,我想以数组形式收集图像名称并将其发送到数据库。
答案 0 :(得分:1)
您需要将图像保存在上传文件夹中,并将图像名称保存在数据库中。
<html>
<body>
<form method="POST" action="<?php echo site_url('my-controller/file_upload');?>" 'enctype'=>'multipart/form-data'>
<label for="file">Filename:</label>
<input type="file" name="userfile[]" id="file" multiple>
<input type="submit" value="upload"></form>
</body>
</html>
然后创建控制器 在里面制造它:
$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();
$fileName = $_FILES['userfile']['name'];
$images[] = $fileName;
希望这会对你有所帮助。 有关更多信息,请尝试以下操作:http://w3code.in/2015/09/upload-file-using-codeigniter/