Зміна інформації в базі даних mysql з веб сторінки

Зміна інформації в базі даних MySql з веб сторінки

Продовжуємо серію уроків по роботі з базами даних MySql. У цьому уроці ми навчимося редагувати інформацію в базі даних MySql прямо з веб сторінки.

У минулих уроках ми створили базу даних MySql, заповнили її, створили код для виведення інформації з бази, а також для внесення нових записів в базу прямо з веб сторінки.

Якщо Ви пропустили минулі випуски по базах даних MySql, то ось посилання на них:

В даному уроці я продовжу використовувати вже наявну структуру файлів. Всі файли даного уроку є в исходниках до цього уроку.

Отже, давайте почнемо!

Що нам потрібно зробити?

1. Створюємо кнопку, яка буде запрошувати всі записи з бази.

2. Створити файл, в якому списком будуть виводитися всі наявні в базі даних записи (для того, щоб вибрати ту, яку хочемо редагувати).

3. При виборі певного запису в роботу включається файл-обробник, який забирає з бази даних всю інформацію по потрібній нам записи.

4. Обрана інформація вставляється в поля форми для редагування, яку ми створимо.

5. Після редагування, за допомогою певного SQL-запиту інформація відправляється на оновлення в базу даних MySql.

1. Перше, що ми зробимо - це створимо файл "select_change.php" і розмістимо його в тому ж каталозі, що і всі наші основні файли (тобто в основному каталозі).

Додаємо наступний рядок в кожен з файлів перед закриває тегом body.

2. Тепер відкриємо сам файл "select_change.php". Ми будемо виводити тільки ім'я і прізвище з бази для вибору користувача, інформацію про який ми хочемо редагувати.

Для цього спочатку ми сформуємо запит до бази даних, який скаже вибрати всі записи з бази, а потім виведемо списком імена і прізвища кожної людини.

Виводити дані ми будемо як радиокнопки. Це ми робимо для того, щоб можна було вибрати користувача (притому тільки одного).

З бази ми будемо запитувати тільки 3 параметра: це id, first_name, last_name. Останні два будуть виводитися на екран для того щоб ми могли визначитися яку інформацію з бази даних будемо редагувати. Параметр ж id буде невидимий (він буде значенням атрибута value), але він необхідний для того, щоб програма могла ідентифікувати в базі даних обраний елемент (прізвища та імена можуть повторюватися, а id завжди індивідуальний).

Зверніть також увагу на спосіб виведення інформації в цьому файлі. Ви можете побачити такі символи як% s.

Принцип тут такий: в подвійних лапках у функції "printf" виводиться html код, замість визначеної змінної (наприклад, такий як "$ row [ 'first_name']") ми ставимо якоря -% s. А після того як закрилися подвійні лапки, ми перераховуємо ці змінні, що відповідають поставленим якорів. Це зручно, коли працюєш з функцією "printf", проте слід стежити за порядком якорів і перераховуються змінних, так як вони будуть підставлені саме в тому порядку, в якому Ви їх перераховуєте.

Все це укладено в тег форми, в якій action = "edit.php". Файл edit.php ми створимо в наступному кроці.

Отже, код нашого файлу "select_change.php" буде виглядати наступним чином:

  • Вибір користувача для редагування. Додати користувача

    А якщо завантажити сторінку в браузері, то можна побачити приблизно наступне:

    Зміна інформації в базі даних mysql з веб сторінки

    3. Створіть файл "edit.php" і помістіть його там же в основному каталозі.

    Цей файл є файлом-обробником нашого попереднього файлу. У ньому буде виводитися форма і автоматично заповнюватися інформацією з бази даних MySql тієї записи, яку ми вибрали.

    Крім того, в цій формі можна буде змінити один або кілька параметрів (наприклад, ім'я, прізвище і т.д.).

    По-перше, програма повинна розуміти, яку запис Ви від неї вимагаєте. А для цього повинен бути переданий параметр id. Ім'я для input в минулому файлі ми дали - "user", там же у нас зберігається в атрибуті value потрібний id. А отже отримати його можна надіславши запит за допомогою "$ _REQUESR [ 'user']". І далі занести результат в змінну "$ id".

    По-друге, потрібно сформувати запит, який буде виводити з нашої таблиці бази даних всю інформацію про записи з зазначеним ідентифікатором.

    По-третє, потрібно виконати цей запит і вивести кожен параметр в передбачене для нього поле (в атрибутах value).

    Ось код всього вищеописаного:

    Зверніть увагу, що у нашої форми action = 'scripts / update.php'. Цей файл ми створимо в наступному кроці.

    Також зверніть увагу на те, що параметр id також передається, але ми його не побачимо, тому що йому присвоєно type = 'hidden'. Передати його потрібно, але краще не давати можливості його міняти, щоб не допустити помилок.

    А ось і результат, якого ми поки що досягли:

    Зміна інформації в базі даних mysql з веб сторінки

    4. Що ж, залишилося зовсім небагато!

    Потрібно створити файл update.php і покласти його в папку зі скриптами.

    Що буде робити цей файл?

    Він отримає з попереднього файлу всі введені значення і кожне занесе в змінну.

    Потім він сформує запит до бази даних, в якому попросить оновити запис з урахуванням переданого ідентифікатора, підставивши в відповідне поле відповідну змінну.

    Після він відправить запит на виконання і виведе нас результат у вигляді текстового повідомлення (або все пройшло добре, або сталася помилка).

    Ось код цього файлу:

    А ось і результат роботи цього скрипта:

    Зміна інформації в базі даних mysql з веб сторінки
    Зміна інформації в базі даних mysql з веб сторінки
    Зміна інформації в базі даних mysql з веб сторінки

    Отже, на даний момент (якщо Ви пройшли всі 4 уроки цієї серії) у Вас є додаток, за допомогою якого Ви можете додавати нові записи в базу даних, виводити їх в списку, або шукати і виводити з потрібним імені та прізвища, а також редагувати вже наявні записи.

    Погодьтеся, не мало. І все це не заходячи в саму базу. Все відбувається з веб сторінок.

    У наступному уроці я розповім Вам як видаляти, вибрані записи з бази даних.

    Якщо Ви ще не підписалися на оновлення блогу, то обов'язково підписуйтесь, щоб не пропустити нові уроки.

    Удачі Вам, і до зустрічі в наступному уроці!

    Схожі статті