大家好,我想问一下为什么我不能在数据库中上传我的图片,当我想上传时为什么不显示我的列名而不是我的图片文件名 错误是
Error Number: 1054
Unknown column 'Avanza.jpg' in 'field list'
INSERT INTO `upload` (`Avanza`.`jpg`) VALUES ('')
Filename: C:/xampp/htdocs/codeigniter/system/database/DB_driver.php
Line Number: 691
这是我的代码
用于控制器
function file_data(){
$config['upload_path'] = './uploads';
$config['allowed_types'] = 'jpg|png|jpeg|gif';
$config['max_size'] = '2048'; //2MB max
$config['max_width'] = '4480'; // pixel
$config['max_height'] = '4480'; // pixel
$config['file_name'] = $_FILES['fotopost']['name'];
$this->upload->initialize($config);
if (!empty($_FILES['fotopost'])) {
if ( $this->upload->do_upload('fotopost') ) {
$foto = $this->upload->data();
$data = $foto['file_name'];
$this->upload_foto->save_pic($data);
redirect('');
}else {
die("gagal upload");
}
}else {
echo "tidak masuk";
}
}
这是给我的模型
class Upload_foto extends CI_Model{
function save_pic($data){
$this->db->insert('upload',$data);
}
}
谢谢你的帮助
你的错误信息正在告诉你什么是错的。
基本上它说--我不知道一个叫 "fluffybunny.jpg "的列名(随机选择的文件名)。
它期待的是一个列名和一个值。
假设你的 表列名称为您的图像文件 是 文件名那么你的$data需要是一个数组,比如... ...
$data['file_name'] = $foto['file_name'];
所以你需要插入的是一个关联数组['field_name' => 'value']。
注意:阅读CodeIgniter用户指南也是很有好处的。