Работа с таблицами БД с использованием MVC фреймворка

  • doc
  • 11.05.2020
Публикация в СМИ для учителей

Публикация в СМИ для учителей

Бесплатное участие. Свидетельство СМИ сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 173. Работа с таблицами БД с использованием MVC фреймворка.doc

Лабораторная работа №5

 

Работа с таблицами БД с использованием MVC фреймворка

 

Цель работы: получить практические разработки модулей приложений с помощью фреймворка CodeIgniter для разработки каталога.

 

 

Теоретические сведения

 

Использование хелперов:

-        Хелперы, как говорит их название, помогают в решении задач разработчика. Каждый файл с хелперами — это простая коллекция функций в той или иной категории.

-        URL Хелперы - помогают создавать ссылки,

-        Хелперы форм - помогают создать элементы форм

-        Текстовые хелперы - выполняют различные функции по форматированию текста

…..

-        Если нужно загрузить более одного хелпера, можно перечислить их в одном массиве:

$this->load->helper( array('helper1', 'helper2', 'helper3') );

-        Авто-загрузка хелперов - если необходим хелпер для всего приложения, можно указать CodeIgniter, чтобы он загружал его при инициализации приложения.

В файле application/config/autoload.php добавить хелпер в массив автозагрузки:

$autoload['helper'] = array('url');

 

 

Users

id

First_name

Last_name

nick

email

password

 
Пример:

 

 

Структура приложения:

-     Controllers:

admin.php

-     Models:

-blog_model.php

-user_model.php

-post_model.php

-     Views:

 

 

Content, например View/post.php

 

<div>

         <div style="color:blue"><?=$this->session->flashdata('info')?></div>

         <table border="1">

         <tr> <td> Id </td> <td> Id_user </td> <td> post_name </td> <td> post_data </td><td> post_delete</td>

            </tr>

         <?php foreach($posts as $post):?>

                   <tr>

                             <td><?=$post->id_post?></td>

                            <td><?=$post->first_name?></td>

                            <td><?=$post->contents?></td> 

                            <td><?=$post->created_at?></td>

                            <td><?=anchor("admin/delete_post/$post->id", "delete")?></td>

                   </tr>

         <?php endforeach; ?>    

         </table>

</div>

 

View/Profiles.php

 

<div>

         <div style="color:blue"><?=$this->session->flashdata('info')?></div>

         <table border="1">

<tr>  <th>Id:</th>        <td><?=$profile->id?></td></tr>

<tr>  <th>First name:</th>     <td><?=$profile->first_name?></td></tr>

<tr>  <th>Last name:</th>     <td><?=$profile->last_name?></td></tr>

<tr>  <th>Nick:</th><td><?=anchor("admin/edit_profile", $profile->nick)?></td>

</tr>

<tr>  <th>E-mail:</th> <td><?=$profile->email?></td></tr>

</table>

</div>

 

 

Controller/admin.php

 

<?php

class Admin extends Controller {

function Admin()

{     parent::Controller();

$this->load->model('Blog_model', 'blog');

$this->load->model('User_model', 'user');

$this->load->model('Post_model', 'post');

$this->load->helper(array('form', 'text', 'admin'));         }

function index()

{     redirect("admin/settings");     }

function settings() {

$data['settings'] = $this->blog->current();

$this->_render('settings', $data); }

function profile() {

$data['profile'] = $this->user->current(); // Обращение к модели, вызов функции

 

$this->_render('profiles', $data);  }   // имя view

function post() {

$data['posts'] = $this->post->all();

$this->_render('posts', $data); }

function edit_profile() {

$this->form_validation->set_rules('profile[first_name]', 'First name', 'required');

$this->form_validation->set_rules('profile[last_name]', 'Last name', 'required');

$this->form_validation->set_rules('profile[nick]', 'Nick', 'required');

if ($this->form_validation->run() == FALSE) {

$this->session->set_flashdata('info', "Profile not saved!");

$data['profile'] = $this->user->current();

$this->_render('edit_profile', $data); }

else {  $this->user->edit_profile($this->input->post('profile')); // Обращение к модели, вызов функции edit_profile. Передача данных по методу post

 

$this->session->set_flashdata('info', "Provile saved!");

redirect('admin/profile');    }          }

 

Задание на работу:

 

Используя MVC фреймворк выполнить следующее:

1                   Разработать модуль авторизации пользователей

2                   Выполнить валидацию данных

3                   Реализовать crud операции (create, read, update, delete) над основными сущностями предметной области

 


Скачано с www.znanio.ru