У меня проблемы с загрузкой изображения с помощью codeigniter. Я новичок в этом и не знал, как загрузить изображение с помощью codeigniter. поэтому я надеюсь, что любой из вас, ребята могут помочь мнеКак загрузить изображение в codeigniter 3
это моя форма имени form_add.php
<form method="POST" action="<?php echo base_url()."index.php/crud/insert"; ? >">
<table style="width:110%" class="table table-striped table table-bordered table table-hover">
<td>Nama</td>
<td><input type="text" name="nama_produk"/></td>
</tr>
<tr>
<td>Info</td>
<td><input type="text" name="info_produk"/></td>
</tr>
<tr>
<td>Harga</td>
<td><input type="text" name="harga_produk"/></td>
</tr>
<tr>
<td>Stock</td>
<td><input type="text" name="stock"/></td>
</tr>
<?php echo form_open_multipart('upload/do_upload');?>
<tr>
<td>Gambar</td>
<td><input type="file" name="gambar_produk"></td>
</tr>
<tr>
<td>Di Buat Oleh</td>
<td><input type="text" name="penulis_produk"/></td>
</tr>
<tr>
<td>Kategori</td>
<td><input type="text" name="kategori"/></td>
</tr>
<tr>
<td>Kode Kategori</td>
<td><input type="text" name="kode_kategori"/></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="btnsubmit" value="Simpan" /></td>
</tr>
</table>
</form>
и это мой контроллер с именем crud.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Crud extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->helper(array('form', 'url'));
}
public function index(){
$data = $this->mymodel->GetAll();
$this->load->view('view_all_produk',array('data' => $data));
}
public function add_data(){
$this->load->view('form_add');
}
public function insert(){
$nama_produk = $_POST['nama_produk'];
$info_produk = $_POST['info_produk'];
$harga_produk = $_POST['harga_produk'];
$stock = $_POST['stock'];
$penulis_produk = $_POST['penulis_produk'];
$gambar_produk = $_FILES['gambar_produk']['name'];
$gambar_tmp = $_FILES['gambar_produk']['tmp_name'];
$kategori = $_POST['kategori'];
$kode_kategori = $_POST['kode_kategori'];
$data_insert = array(
'nama_produk' => $nama_produk,
'info_produk' => $info_produk,
'harga_produk' => $harga_produk,
'stock' => $stock,
'penulis_produk' => $penulis_produk,
'gambar_produk' => $gambar_produk,
'kategori' => $kategori,
'kode_kategori' => $kode_kategori
);
$res = $this->mymodel->insertData('produk',$data_insert);
if($res >= 1){
$this->session->set_flashdata('pesan','Tambah Data Sukses');
redirect('crud/index');
}else{
echo "<h2>Insert Data Gagal!!!</h2>";
}
}
public function do_upload()
{
$config['upload_path'] = './assets/images';
$config['allowed_types'] = 'gif|jpg|png';
$config['max_size'] = 300;
$config['max_width'] = 1024;
$config['max_height'] = 768;
$this->load->library('upload', $config);
if (! $this->upload->do_upload('gambar_produk'))
{
$error = array('error' => $this->upload- >display_errors());
$this->load->view('form_add', $error);
}
else
{
$data = array('upload_data' => $this->upload->data());
}
}
и это модель под названием mymodel.php
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
class Mymodel extends CI_Model {
public function GetAll($where="") {
$data = $this->db->query('select * from produk '.$where);
return $data -> result_array();
}
public function insertData($tableName,$data){
$res = $this->db->insert($tableName,$data);
return $res;
}
public function updateData($tableName,$data,$where){
$res = $this->db->update($tableName,$data,$where);
return $res;
}
public function GetKategori($where=""){
$data = $this->db->query('select * from kategori '.$where);
return $data;
}
}
также это то, что он показывает после того, как я запустить его
PHP-ошибка была обнаружена
Серьезность: Обратите внимание
Сообщение: Undefined индекс: gambar_produk
Имя файла: Контроллеры/crud.php
Порядковый номер: 30
Backtrace:
Файл: C: \ xampp \ htdocs \ genstore \ admin \ application \ Контроллеры \ crud.php Line: 30 Функция: _error_handler
Файл: C: \ XAMPP \ HTDOCS \ genstore \ Admin \ index.php Line: 315 Функция: require_once
РНР Ошибка была обнаружена
Серьезность: Обратите внимание
Сообщение: Undefined индекс: gambar_produk
Имя файла: Контроллеры/crud.php
Порядковый номер: 31
Backtrace:
Файл: C: \ XAMPP \ HTDOCS \ genstore \ Admin \ Application \ Контроллеры \ crud.php Line: 31 Функция: _error_handler
Файл: C: \ xampp \ htdocs \ genstore \ admin \ index.PHP Line: 315 Функция: require_once
Ошибка базы данных Происходило
Номер ошибки: 1048
Колонка 'gambar_produk' не может быть пустым
INSERT INTO produk
(nama_produk
, info_produk
, harga_produk
, stock
, penulis_produk
, gambar_produk
, kategori
, kode_kategori
) VALUES ('Sada', 'Asdas', 'Asdasd', 'sdasd', 'sdasd', NULL, 'sadasd', '14')
Имя файла C:/XAMPP/HTDOCS/genstore /admin/system/database/DB_driver.php Номер
линия: +691
так может кто-нибудь сказать мне, что это моя ошибка? спасибо
Посмотрите на правый под ** «Связанные» ** >>> –
Возможный дубликат [не может загрузить изображения с помощью CodeIgniter] (HTTP : //stackoverflow.com/questions/14365639/unable-to-upload-image-using-codeigniter) – AmericanUmlaut
Также я рекомендую использовать хелпер формы codeigniter https://www.codeigniter.com/user_guide/helpers/form_helper.html#loading -это-хелпер и form_open_multipart() https://www.codeigniter.com/user_guide/helpers/form_helper.html#form_open_multipart – user4419336