Створення движка на mvc. Робимо можливість редагування і видалення користувачів.
Всім привіт! Продовжуємо створювати наш движок на MVC, і сьогодні ми зробимо редагування і видалення користувачів з бази даних.
По-перше, в файлі index.php(views / user) Ми вкажемо правильний шлях для посилань в циклі.
// ...
echo `.URL.`User / edit /`.$ value[`Id`].` "Gt; Edit
.URL.`User / delete /`.$ value[`Id`].` "Gt; Delete`-
// ...
Тепер в контролері user.php опишемо метод delete.
publicfunctiondelete($ id){
$ this-gt;model-gt;delete($ id) -
header(`Location:`.URL.`User`) -
}
Як завжди тепер переходимо в user_model.php і створюємо там цей метод
publicfunctiondelete($ id){
$ sth = $ this-gt;db-gt;prepare(`DELETE FROM users WHERE id =: id`) -
$ sth-gt;execute(array(
`: Id`= Gt; $ id
)) -
}
Прекрасно! Видалення вже працює. тепер відкриємо user.php
Відео: MVC (PHP) на прикладі TaskManager # 1
publicfunction edit($ id){
$ this-gt;view-gt;user = $ this-gt;model-gt;userSingleList($ id) -
$ this-gt;view-gt;render(`User / edit`) -
}
publicfunction editSave($ id){
}
з index.php скопіюйте форму, створіть файл edit.php в папці user.
// Форма
У формі поміняйте action
Також слід змінити поля введення. для поля Login додамо атрибут value зі значенням з БД.
value="Lt;? Php echo $ this-gt; user [ `login`] -? Gt;"
Тепер зробимо перевірку ролі користувача
lt ;?php if($ this-gt;user[`Role`]==`Default`) echo `Selected`-?gt;Default
lt ;?php if($ this-gt;user[`Role`]==`Admin`) echo `Selected`-?gt;Admin
lt ;?php if($ this-gt;user[`Role`]==`Owner`) echo `Selected`-?gt;Owner
відкриємо файл user_model.php і створимо там метод userSingleList
Відео: # 2.2 Експерт PHP: MVC - перша модель
publicfunction userSingleList($ id){
$ sth = $ this-gt;db-gt;prepare(`SELECT id, login, role FROM users WHERE id =: id`) -
$ sth-gt;execute(array(`: Id`= Gt; $ id)) -
return $ sth-gt;fetch() -
}
Тепер давайте відкриємо файл user.php, скопіюйте все з методу create і вставте в editSave вище заголовка header (перевірте, щоб у вас не було двох поспіль заголовка).
Тут потрібно поміняти лише наступне
$ this-gt;model-gt;editSave($ data) -
Тепер в моделі також скопіюємо метод create і назвемо його editSave
змінимо SQL-запит
UPDATE users SET `login`=:login,`password`=:password,`role`=:role WHERE id =:id
Звичайно ж, потрібно додати md5 шифрування пароля в масиві
Відео: Шаблон проектування MVC
md5($ data[`Password`])
і додати id в масив
`: Id`= Gt; $ data[`Id`]
У метод editSave у файлі user.php також додамо id
Відео: Введення в MVC Framework
$ data[`Id`]= $ id-
От і все. Ми зробили редагування і видалення користувачів з бази даних.
Дякую за увагу!
P.S. Якщо ви не дуже розумієте ООП, то раджу придбати курс Створення движка на PHP і MySQL 2.0, де дана тема розглянута дуже докладно.
- Як зробити авторизацію користувачів через facebook.
- Що нового в php7.1: обнуляє типи.
- Що нового в php7.1: нові повідомлення про помилки.
- Команда cmdkey - створення, відображення, видалення і збереження імен користувачів і паролів.
- Вивчаємо coffeescript. Оператори.
- Створення движка на mvc. Створюємо можливість додавання користувача в базу даних через адмін панель
- Створення движка на mvc. Закінчуємо роботу з чатом.
- Серіалізация об`єктів в php.
- Reflection api. Reflectionclass.
- Створення движка на mvc. Починаємо робити чат.
- Створення движка на mvc. Вступ.
- Створення xml-документа на php
- Створення движка на mvc. Продовжуємо роботу над чатом.
- Reflection api. Reflectionobject.
- Reflection api. Reflectionmethod.
- Створення updater-script за кілька хвилин
- Створення движка на mvc. Начинам робити систему розподілу прав користувачів.
- Парсинг xml-документа на php
- Створення движка на mvc. Створюємо авторизацію.
- Створення движка на mvc. Виводимо сторінки. Частина 4.
- Створення движка на mvc. Починаємо роботу з базою даних.