Я новичок в Codeigniter, и я пытаюсь получить имя файла загруженного изображения, чтобы сохранить его в базе данных. У меня две модели, homemodel имеет дело с моей базой данных, а image_upload_model имеет дело с загрузкой изображения. Все работает отлично, за исключением того, что я не знаю, как опубликовать имя файла изображения в базу данныхCodeigniter: как получить имя файла
image_upload_model.php
<?php
class Image_upload_model extends CI_Model {
var $image_path;
//constructor containing the image path
function Image_upload_model() {
$this->image_path = realpath(APPPATH.'../assets/img');
}
//uploading the file
function do_upload() {
$config = array(
'allowed_types' => 'jpg|jpeg|gif|png',
'upload_path' => $this->image_path
);
$this->load->library('upload',$config);
$this->upload->do_upload();
}
}
?>
homemodel.php
<?php
class homeModel extends CI_Model {
//inserting into the table tenants
function addTenants() {
$this->load->model('Image_upload_model');
$data = array(
'Fname' => $this->input->post('Fname'),
'Lname' => $this->input->post('Lname'),
'contact' => $this->input->post('contact'),
'email' => $this->input->post('email'),
'location' => $this->input->post('location'),
'img_url' => " "//the filename of the image should go here
);
$this->db->insert('tenants', $data);
}
}
?>
Контроллер
homecontroller.php
<?php
class HomeController extends CI_Controller {
public function index() {
$this->load->helper('form');
$this->load->helper('html');
$this->load->model('homemodel');
$this->load->model('Image_upload_model');
if ($this->input->post('submit') == 'Submit') {
$this->homemodel->addTenants();
echo 'inserted';
$this->Image_upload_model->do_upload();
echo 'image uploaded';
}
$this->load->view('index.php');
}
}
?>
любая помощь приветствуется, спасибо!
Вы проверили [класс Updloading File] (http://ellislab.com/codeigniter/user-guide/libraries/file_uploading.html)? Это в значительной степени обрабатывает загрузку файлов. –