这是我第一次使用codeigniter。 我在CI中上传文件时感到很困惑。我可以插入数据,但文件不会保存在数据库mysql中
这是我的观点 - 表格
<form action="<?php echo base_url()."crud/do_insert";?>" method="POST" enctype="multipart/form-data">
<table>
<tr>
<td> Code </td>
<td><input type="text" name="code"></td>
</tr>
<tr>
<td> Name </td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td> price </td>
<td><input type="text" name="price"></td>
</tr>
<tr>
<td> Image </td>
<td><input type="file" name="image"></td>
</tr>
</table>
<input type="submit" name="insert" value="insert">
这是我的控制器
public function do_insert(){
$code = $_POST['code'];
$name = $_POST['name'];
$price= $_POST['price'];
$image= $_FILES['image'];
$config['upload_path'] = './upload/';
$config['allowed_types'] = 'jpg|png';
$config['max_size'] = 300;
$config['max_width'] = 2000;
$config['max_height'] = 2000;
$this->load->library('upload', $config);
$image = $this->upload->data();
$data_insert = array('code' => $code,
'name' => $name,
'price' => $price,
'image' => $image['file_name']
);
$res = $this->m_barang->insertData('stuff', $data_insert);
if($res>=1){
redirect('crud/index');
}else{
echo "Failed";
}
}
是不是因为我有$ _POST和$ _FILES这个文件不能插入数据库?我是否必须在文本表单和上传表单之间分隔,但仍然在一个页面中?