Форум программистов, компьютерный форум, киберфорум
PHP: Фреймворки
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
1 / 1 / 1
Регистрация: 08.12.2014
Сообщений: 62

CodeIgniter - передача данных из форм в БД / MVC

23.12.2017, 00:00. Показов 2351. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть проблема, видимо не совсем понимаю как надо правильно передавать данные в MVC из формы в контроллер, чтобы оттуда передать в модель и в бд. Пытаюсь в контроллере обратится к переменной из вью, но это не работает.

Пробовал заполнять массив $data в ручную, в бд добавляет. Только бы понять как передать переменные полей туда...

Помогите разобраться

Model:
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
 
class Articles_model extends CI_Model {
    
    
    function get_articles()
    {
        $this->db->limit('15');
        $this->db->order_by('id', 'DESC');
        $query = $this->db->get('articles');
        return $query->result_array();
    }
    
    function add_article($data)
    {
        $this->db->insert('articles', $data);
    }
    
 
}

View:
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
    <?php    if (isset($_POST['submit'])){
        echo 'submit!';
    }
    $title = $_POST['title'];
    $text = $_POST['text'];
        ?> 
 
 
<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>Post and Get</title>
</head>
<body>
<style>
        p {padding: 0 15px;}
        .title {text-decoration: underline;}
        .add {float: left; width: 300px;}
        .content {float: left; width: 550px;}
</style>
<div class="content">
<?php foreach($articles as $item):?>
<span class="article">
<p class="title"><?=$item['title']; ?></p>
<p><?=$item['text']; ?></p><hr />
</span>
<?php endforeach?>
</div>
 
<div>
    <form action="" method="post">
        <p>Название компании <input name="title" id="title" type="text"/></p>
        <p>Описание <br /><textarea name="text" id="text" cols="40" rows="15"></textarea></p>
        <p><input type="submit" name="submit"/></p>
    </form>
</div>  
</body>
</html>

Controller:
Кликните здесь для просмотра всего текста
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
defined('BASEPATH') OR exit('No direct script access allowed');
 
class First extends CI_Controller {
    
    function articles()
    {
        $this->load->model('articles_model');
        $data['articles'] = $this->articles_model->get_articles();
        $this->load->view('articles_view', $data);
    }
    
    function add_article()
    {
         $data{'title'} = $title;
         $data{'text'} = $text;
         $this->load->model('articles_model');
         $this->articles_model->add_article($data);
    }
 
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.12.2017, 00:00
Ответы с готовыми решениями:

Передача некоторых данных в шаблон MVC
У меня таблица User с данными: name mail bla bla bla, и мне понадобилось выводить name на каждой странице сайта. Как правильно реализовать...

MVC передача данных между моделью и представлением
Однако Здрасьте! В целях обучения ООП, решил переписать один прект с использованием mvc. В принципе все понятно, но есть некоторые...

Передача данных в представление ASP.NET MVC 5
Добрый день уважаемые посетители форума, возник вопрос по ASP.NET MVC 5. У меня есть база данных, имеется таблица с элементами, у которой...

3
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
23.12.2017, 00:33
данные, которые приходят в контроллер после ввода на форме:
$this->input->post('title') и $this->input->post('text')
вот ими и манипулируйте
1
1 / 1 / 1
Регистрация: 08.12.2014
Сообщений: 62
23.12.2017, 00:50  [ТС]
Dmitry, Спасибо, работает! Теперь добавляет в бд.
указал у формы action="метод контроллера" и обратился в контроллере к полю, так как вы сказали

Теперь думаю, как сделать добавление в базу без перехода на другую страницу и чтобы после добавления новой записи блок перересовывался, не подскажите как и в каком вообще направлении?
0
Эксперт по компьютерным сетямЭксперт NIX
 Аватар для Dmitry
13440 / 7534 / 830
Регистрация: 09.09.2009
Сообщений: 29,554
23.12.2017, 01:01
Цитата Сообщение от SMOuk24 Посмотреть сообщение
добавление в базу без перехода на другую страницу
начинаете изучать ajax
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
23.12.2017, 01:01
Помогаю со студенческими работами здесь

Модель MVC, передача данных из контроллера в вид?
как правильно организовать передачу данных из контроллера в вид? как-то у меня в голове не укладывается как это сделать, напр. есть: ...

spring-mvc передача данных из контроллера в view
у меня возникла проблема. пробую писать жалкое подобие сайта на Java. и мне необходимо передавать данные между контроллером и вьюхой....

Dropdownlist, MVC, MySql передача данных из коллекции
Доброго времени суток, такой вопрос. Есть коллекция куда передается данные с таблицы. Как можно сделать dropdownlist из элементов этой...

Передача данных из html-форм в php-скрипты; get, post
Добрый день! только начал изучение php, поэтому не судите строго. возникает проблема при передаче данных из хтмл-форм в пхп-скрипты. вот...

Codeigniter - pagination (передача параметра)
Здравствуйте! Реализую pagination на странице и вроде все было просто, но ... Если это реализовано в функции, которая принимает параметр,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Программа принимает математическое выражение в виде строки и выдаёт его производную в виде строки и вычисляет значение производной при заданном х Логарифм записывается как: (x-2)log(x^2+2) -. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru