База и таблицы уже созданы. Наполняем их структурированным контентом. Структурированный — отвечающий структуре таблицы. Поскольку номера строк выставляются автоматически, остается ввести в соответствующие поля соответствующие значения.
Для работы с базой данных существуют команды:
- ВЫБРАТЬ — SELECT,
- ИЗМЕНИТЬ - UPDATE,
- ВСТАВИТЬ — INSERT.
Это основные команды. Остальные можете посмотреть в своей СУБД.
Освоив СУБД, уже можно создавать динамический сайт. В таблицы данные будут вводиться вручную, также редактироваться. Вручную же придется выполнять разметку страницы. Работа долгая, утомительная. Зато один раз проделав подобное, научимся легко и просто писать код по вставке контента в таблицу.
INSERT
Вручную процесс выглядит приблизительно так:
- Вызываем таблицу, например, test
- В верхнем меню находим «Вставить». Откроется окно вставки с принятыми ранее обозначениями number, first, second.
- По верхней кромке прописаны наименования: Столбцы, Тип, Функция, NULL, Значение.
- Имена и типы столбцов уже созданы при создании таблицы. Функция вряд ли понадобится при вставке статьи. NULL означает пустоту поля. Если его нет, поле не может быть пустым ни при каких обстоятельствах. Так что, пусть остается как есть.
- В поле Значение вводим данные. Так как для столбца number(id) установлено свойство авто инкремент, не заполняем его. Поле заполнится автоматически. first, хранит заголовок статьи. Вписываем в указанное поле заголовок. Столбец second хранит содержание статьи. Размечаем текст и помещаем в поле.
- Жмем ОК.
- Данные появятся в таблице.
Скрипт PHP
При работе с командой, следует помнить:
- база данных должна быть уже создана
- Вам должны быть известны ее имя, пароль пользователя и имя сервера
- таблицы БД должны быть уже созданы
Используется для вставки содержимого в таблицу. Практикуясь, создаем очередной файл php на сервере.
<?php
/*Открываем соединение с БД,
здесь:
localhost - имя веб-сервера,
Admin — имя пользователя БД,
pass — пароль БД,
mybase — имя БД */
$mysqli = new mysqli ('localhost', 'Admin', 'pass', 'mybase');
//Проверка подключения
if (mysqli _connect _errno()) {
echo "Подключение невозможно: " .mysqli _connect_error ();
}
//Определяем кодировку
$mysqli -> query ("SET NAMES 'utf8'");
//Выполняем запрос
if (!$mysqli -> query("INSERT INTO test ( first, second )
VALUES ('Заголовок', 'Содержание статьи')")) {
echo "Не удалось ввести данные:
(" . $mysqli - >errno . ")" . $mysqli->error;
} else echo "Данные введены в таблицу!";
?>Здесь:
- $mysqli -> query — создание запроса
- INSERT INTO — команда Вставить
- test — имя таблицы
- first, second — имена столбцов. Столбец id не указываем, он имеет свойство A_I, следовательно, значение вносится автоматически
- VALUES() — вставляемые значения. Должны строго соответствовать указанным ранее именам столбцов, их порядку и определенным ранее типам переменных.
- $mysqli -> errno . " ) " .$mysqli -> error; — покажет ошибку при работе с MariaDB, если что-то не так.
SELECT
Переходим к отображения контента. То есть выведем хранимые в строке таблицы данные из БД на монитор.
Что нужно?
Предполагается, язык php Вы уже освоили. Переход к странице с определенным контентом обеспечат ссылки, расположенные в меню или еще где-то. Выведем пока контент одной или нескольких страниц.
Потребуется написать файл php и разместить его на сервере. Создаем на сервере, в папке
localhost / www файл с любым именем и расширением php, например,
myfirst.php. Файлы именуем на латинице.
Скрипт PHP
Отображение строк таблицы
Выборку данных всех статей делаем, используя символ *:
<?php
/*Открываем соединение с БД,
здесь:
localhost - имя веб-сервера,
Admin — имя пользователя БД,
pass — пароль БД,
mybase — имя БД */
$mysqli = new mysqli ('localhost', 'Admin', 'pass', 'mybase');
//Проверка подключения
if (mysqli _connect _errno()) {
echo "Подключение невозможно: " .mysqli _connect_error ();
}
//Определяем кодировку
$mysqli -> query ("SET NAMES 'utf8'");
/*Выбираем все столбцы (SELECT *) из таблицы,
результат выборки вносим в переменную $result_set*/
$result_set = $mysqli -> query ('SELECT * FROM test');
/*В цикле отображаем результат выборки,
внося его в ассоциативный массив
fetch_assoc() с именем $row*/
while(
$row = $result _ set -> fetch _ assoc()) {
//Печатаем результат : Заголовок
print _ r ($row['first']);
//Содержание
print _ r ($row['second']);
}
//Очищаем выборку
$result _ set -> close();
// Закрываем соединение
$mysqli -> close();
?> Открываем сервер localhost, вызываем файл и любуемся на результат. Здесь показан самый простой способ отображения контента. Если в базе несколько статей, все они будут отображены на странице.
Чтобы вывести конкретную статью, в строке
SELECT * FROM `test` нужно указать условие отображения, то есть номер строки, например,
WHERE number = 1.Код принимает вид:
<?php
/*Открываем соединение с БД,
здесь:
localhost - имя веб-сервера,
Admin — имя пользователя БД,
pass — пароль БД,
mybase — имя БД */
$mysqli = new mysqli ('localhost', 'Admin', 'pass', 'mybase');
//Проверка подключения
if (mysqli _connect _errno()) {
echo "Подключение невозможно: " .mysqli _connect_error ();
}
//Определяем кодировку
$mysqli -> query ("SET NAMES 'utf8'");
/*Выбираем все столбцы строки с номером 1
( SELECT * ) из таблицы,
результат выборки вносим в переменную
$result _ set*/
$result _ set =
$mysqli -> query ('SELECT * FROM list WHERE number=1');
/*В цикле отображаем результат выборки,
внося его в ассоциативный массив
fetch _ assoc() с именем $row*/
while($row = $result _ set -> fetch _ assoc()) {
//Печатаем результат
//Заголовок
print _ r ($row['first']);
echo "<br/>";
//Содержание
print _ r ($row['second']);
echo " <br /> ";
}
//Очищаем выборку
$result _ set -> close();
//Закрываем соединение
$mysqli -> close();
?>Приведенный код демонстрирует каким образом можно вызвать данные из БД. Рабочий код, как правило, сложнее, с различным количеством условий. Можно выбирать не все, а отдельные столбцы, используя команду
SELECT «имя столбца» FROM listЗадавать разные условия с помощью
WHERE «имя столбца»= «значение»Группировать выборку по заданному условию с помощью
GROUPДелать выборку по шаблону, используя
LIKEОтображение столбца таблицы
Для создания меню понадобится вызвать список заголовков статей.
Код создания простого списка заголовков статей очень простой.
Во-первых, вспомним из html, как формируется простой список.
<ul>
<li>
<a>Здесь ссылка</a>
</li>
</ul>
Вид:
Во-вторых, вспомним, как мы формировали ссылку:
index.php?id = «номер строки»Теперь сделаем выборку номеров строк из таблицы БД. Если таблица носит имя test, выполняем выборку из таблицы test, используя команду SELECT. Создадим на сервере файл menu.php. Открываем и вписываем в файл нижеприведенный абзац:
<ul>
<?php
/*Открываем соединение с БД,
здесь:
localhost - имя веб-сервера,
Admin — имя пользователя БД,
pass — пароль БД,
mybase — имя БД */
$mysqli = new mysqli ('localhost', 'Admin', 'pass', 'mybase');
//Проверка подключения
if (mysqli _connect _errno()) {
echo "Подключение невозможно: " .mysqli _connect_error ();
}
//Определяем кодировку
$mysqli -> query ("SET NAMES 'utf8'");
/*Выбираем столбцы number ( SELECT number ) из таблицы,
результат выборки вносим в переменную $res _ menu*/
$res_menu = $mysqli -> query
('SELECT number FROM test ORDER BY number');
/*В цикле отображаем результат выборки,
внося его в ассоциативный массив
fetch _ assoc() с именем $row _ menu*/
while($row _ menu = $res _ menu->fetch_assoc()) {
/*Печатаем результат,
$row _ menu[ 'number '] —
массив, содержащий значения номеров строк*/
?>
<li>
<a>
<?php
echo index.php?id = $row _ menu['number'];?>
</a>
</li>
<?php
//Зачищаем выборку
$res _ menu -> close();
// Закрываем соединение
$mysqli -> close();
?>
</ul>Вид:
Здесь:
SELECT — команда выбрать
number — имя столбца, содержащего номера строк
FROM — откуда выбираем
test — имя таблицы
ORDER BY — указываем порядок отображения данных
number — согласно столбца number.
Отображаемый список будет выведен на монитор по порядку строк столбца number.
Когда понадобится отображать список ссылок в другом порядке, добавляем в таблицу столбец сортировки. Тот порядок, который задается в столбце сортировки, будет определяющим при отображении списка. И указываем имя столбца сортировки в команде ORDER BY вместо number:
SELECT number FROM test ORDER BY имя столбца сортировкиПомещаем файл menu.php на сервер, открываем, видим список ссылок меню. Здесь приведен самый простой способ отображения списка, который может быть меню сайта. Далее, создавая сайт на основании имеющейся БД, сделаем меню посложнее.
Таблицы можно создавать и заполнять в автоматическом режиме.
UPDATE
Команда изменения данных в строке.
$result = mysql_query
("UPDATE
таблица SET поле 1='значение 1',
поле 2='значение 2'
WHERE условие");Скрипт PHP
<?php
/*Открываем соединение с БД,
здесь:
localhost - имя веб-сервера,
Admin — имя пользователя БД,
pass — пароль БД,
mybase — имя БД */
$mysqli = new mysqli ('localhost', 'Admin', 'pass', 'mybase');
//Проверка подключения
if (mysqli _connect _errno()) {
echo "Подключение невозможно: " .mysqli _connect_error ();
}
//Определяем кодировку
$mysqli -> query ("SET NAMES 'utf8'");
/*изменяем значения данных столбцов для строки с номером 1*/
$result = mysql_query ("
UPDATE test SET
first='новое значение',
second='новое значение'
WHERE number = 1");
//Очищаем выборку
$result -> close();
// Закрываем соединение
$mysqli -> close();
?>Сделав выборку из таблицы и распечатав ее, увидим новые данные, если все выполнено верно.
Политика ...обработки ПД веб-сайта unatka.ru и его поддоменов
Вы зарегистрированы на сайте unatka.ru
Ваш логин:
Ваша почта:
Посмотреть комментарии