php – CodeIgniter – 通过表单上传图像,将图像的位置存储在数据库中

我正在尝试通过表单将图像上传到我的网站,但是(而不是使数据库陷入困境)只是将图像的位置存储在数据库中更有效率.

我的表格有问题,真的不知道去哪里:

<?=form_open('bro/submit_new');?>
 //other form data
 Image: <input type="file" name="image" size="20" /> <br>
 <input type="submit" value="Submit" />
</form>

现在表单本身工作正常,问题是它试图将图像存储到数据库字段’image'(类型为TEXT).告诉它只存储文件,并将文件位置存储在“图像”字段中,最简单的方法是什么? (我告诉它通过控制器上传文件的位置).

谢谢

编辑:控制器代码(对于此部分):

function submit_new(){
    $config['upload_path'] = './images/';
    $config['allowed_types'] = 'gif|jpg|png';
    $config['max_size'] = '2000';
    $config['max_width']  = '1024';
    $config['max_height']  = '768';     
    $this->load->library('upload', $config);

    $this->db->insert('post', $_POST);

    redirect('bro');
}
最佳答案
CodeIgniter的文件上传类将为您完成此操作. entry in their user guide尽可能地解释,所以我会指出你.

基本上你只需要修改他们在那里的控制器,包括你将文件URL放在数据库中的位,你可以通过使用$this-> upload-> data()并提取[来自结果数组的full_path],然后将其发送到处理数据库输入的模型.

转载注明原文:php – CodeIgniter – 通过表单上传图像,将图像的位置存储在数据库中 - 代码日志