<MyRusakov.ru />

Создание движка на PHP и MySQL 2.0

Создание движка на PHP и MySQL 2.0

Видеокурс "Создание движка на PHP и MySQL 2.0" научит Вас создавать профессиональные движки для сайтов на PHP и MySQL с использованием ООП и паттерна MVC.

В курсе разобрана вся теория по структуре движка: как всё устроено, какие должны быть объекты, какая у них иерархия и как они взаимодействуют между собой.

В практической части будет создан движок с чистого листа. Будет создано ядро, все адаптеры, все вспомогательные классы, а также классы для работы с объектами базы данных. И чтобы курс был максимально полезным, будет создан движок для сайта MyRusakov.ru.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Создание движка на MVC. Создаем возможность добавления пользователя в базу данных через админ панель

Создание движка на MVC. Создаем возможность добавления пользователя в базу данных через админ панель

Здарова всем, сегодня мы продолжим создавать наш движок и займемся созданием возможности добавления пользователя через админ панель.

Откроем контроллер user.php и создадим 3 метода, также изменим метод index.

public function index() {
  $this->view->userList = $this->model->userList();
  $this->view->render('user/index');
}

public function create() {
  $data = array();
  $data['login'] = $_POST['login'];
  $data['password'] = md5($_POST['password']);
  $data['role'] = $_POST['role'];
  $this->model->create($data);
  header('Location: '.URL.'user');
}

public function edit($id) {
  // будет сделано позже
}

public function delete($id) {
  // будет сделано позже
}

Создадим модель user_model.php

class User_Model extends Model {
  public function __construct() {
   parent::__construct();
  }

  public function userList() {
   $sth = $this->db->prepare('SELECT id, login, role FROM users');
   $sth->execute();
   $sth->fetchAll();
   return $sth->fetchAll();
  }

  public function create($data) {
   $sth = $this->db->prepare('INSERT INTO users(`login`, `password`, `role`)
   VALUES(:login, :password, :role)');
   $sth->execute(array(':login' => $data['login'], ':password' => $data['password'], ':role' => $data['role']));
  }
}

Теперь откроем файл index.php, который находится в views/user.

<h1>User</h1>
<form method="post" action="<?php echo URL;?>user/create">
<label>Login</label><input type="text" name="login"><br>
<label>Password</label><input type="text" name="password"><br>
<label>Role</label>
<select name="role">
<option value="default">Default</option>
<option value="admin">Admin</option>
</select><br>
<label> </label><input type="submit">
</form>
<hr>
<table>
<?php
  foreach($this->userList as $key => $value) {
   echo '<tr>';
   echo '<td>'.$value['id'].'</td>';
   echo '<td>'.$value['login'].'</td>';
   echo '<td>'.$value['role'].'</td>';
   echo '<td><a href="#">Edit</a> <a href="#">Delete</a></td>';
   echo '<br>';
  }
?>
</table>

Итак, пока что остановимся на этом. Сегодня мы сделали возможность добавления пользователя в базу данных через админ панель. Спасибо за внимание и удачи!

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (1):

Andr1yk0 Andr1yk0 21.08.2015 19:14:57

В методе userList модели User ошибка, два раза вызывается fetchAll() и как результат возвращается пустой массив

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.