<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

Просмотрев курс и выполнив упражнения, Вы сможете без проблем создавать функциональные движки для самых различных сайтов.

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

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

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

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

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

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

Создание движка на MVC. Начинаем работу с базой данных.

Создание движка на MVC. Начинаем работу с базой данных.

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

Создадим файл Database.php в папке libs.

<?php
  class Database extends PDO {
   public function __construct() {
    parent::__construct('mysql:host=localhost;dbname=mvc', 'root', '');
   }
  }
?>

Здесь все понятно тем, кто знает ООП и PDO. Если же у вас есть с этим проблемы, прочитайте статьи про них на этом сайте.

В файле Model.php измените строчки

$this->db = new Database();

Создадим файл login_model.php в папке models.

<?php
  class Login_Model extends Model {
   public function test() {

   }
  }
?>

Перейдем в папку controllers, в файл login.php.

<?php
  function index() {
   require 'models/login_model.php';
   $model = new Login_Model();

   $this->view->render('login/index');
  }
?>

А в главном index.php подключим базу.

// ...
  require 'libs/View.php';
  require 'libs/Database.php';
  require 'config/paths.php';
// ...

Перейдем в phpmyadmin и создадим базу данных с именем mvc.

Пока оставим базу и перейдем в файл Controller.php

После создания объекта View пропишем следующее

<?php
  public function loadModel($name) {
   $path = 'models/'.$name.'_model.php';
   if(file_exists($path)) {
    require 'models/'.$name.'_model.php';
    $modelName = $name.'_Model';
    $this->model = new $modelName();
   }
  } ?>

Теперь откроем файл Bootstrap.php, найдем там строчку с созданием объекта контроллера и пропишем следующее

<?php // ...   $controller = new $url[0];   $controller->loadModel($url[0]); ?>

Сейчас у нас выскакивает ошибка из-за login_model.

Зайдите в файл контроллера login.php и удалите из метода index его подключение и создание объекта, чтобы избавиться от ошибки.

Перейдем в файл login_model.php и создадим конструктор. Метод test можно удалить, так как он нам больше не нужен.

<?php
  public function __construct() {
   echo 111;
  }
?>

Если вы теперь обновите страницу, то увидите, что все работает, и наши единички выводятся. Великолепно!

На этом мы заканчиваем, а в следующей статье мы продолжим работу над нашим движком.

Спасибо за внимание!

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

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

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

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

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

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

  1. Кнопка:

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

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

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

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

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

kruty kruty 02.08.2014 16:27:08

Я роблю трохи по-іншому.. створюю для користувачів, наприклад, окремий клас, а потім в контролері викликаю методи. А в моделях - класи для роботи з базами даних, memcached i т.д

Ответить

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