CodeIgniter - загрузка изображения через форму, сохранение местоположения изображения в базе данных - PullRequest
7 голосов
/ 13 ноября 2008

Я пытаюсь загрузить изображение на свой сайт через форму, однако гораздо эффективнее (вместо того, чтобы потерять базу данных) просто сохранить местоположение изображения в базе.

У меня проблемы с формой, и я действительно не знаю, куда идти:

<?=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');
}

Ответы [ 3 ]

9 голосов
/ 20 июля 2009

использовать form_open_multipart (), а не form_open ()

8 голосов
/ 13 ноября 2008

Класс загрузки файлов CodeIgniter сделает это за вас. Запись в их руководстве пользователя объясняет, как мог, поэтому я собираюсь указать вам там.

По сути, вам просто нужно изменить контроллер, который у них там есть, чтобы включить бит, куда вы помещаете URL файла в базу данных, что вы можете легко сделать с помощью $ this-> upload-> data () и извлечения [full_path] из полученного массива, а затем отправка его в модель, которая обрабатывает входные данные базы данных.

0 голосов
/ 25 апреля 2013

используйте страницы модели для загрузки данных в базу данных

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...