Работа с базами данных
Наш тестовый сайт является интернет–магазином компьютеров, поэтому, скорее всего у нас будут акции, направленные на привлечение клиентов. На страницах нашего сайта уже размещена рекламная акция, которая предлагает купить материнскую плату определенной модели и получить рюкзак в подарок.
Посредствам PHP и баз данных мы можем запрограммировать вывод случайной акции при каждой новой загрузке страницы, что было бы очень полезно для привлечения покупателей.
Создаем таблицу внутри БД.
А теперь мы создадим таблицу в базе данных, под именем spec_price, которая будет состоять из двух столбцов: уникального идентификатора и URL–адреса изображения.
Первое поле назовем id, тип int, длинна 4, дополнительно – auto_increment, первичный ключ – ДА.
Второе поле назовем url тип varchar, длинна 255.
Нажимаем сохранить.
Теперь необходимо внести в нашу таблицу URL изображений, которые я заранее подготовил:
http://www.eltis-book.ru/img/sait/plata_special.png
http://www.eltis-book.ru/img/sait/plata_special_1.png
http://www.eltis-book.ru/img/sait/plata_special_2.png
http://www.eltis-book.ru/img/sait/plata_special_3.png
Нажимаем вставить в панели управления phpMyAdmin и вставляем url адреса изображений в поле значение. (В поле idвводить ничего не надо, т.к. оно будет заполняться автоматически путем увеличения на 1). Выбираем вставить новую запись и жмем пошел, когда адреса всех изображений будут введены выбираем возврат и жмем пошел.
Теперь, когда наша таблица заполнена необходимой информацией, пришло самое время создать управляющий php код.
Создаем управляющий PHP скрипт.
для начала нам необходимо соединиться с базой данных, введя данные созданного нами пользователя:
$db = mysql_connect(«localhost»,»admin_plata»,»platapass»);
Выбираем созданную нами базу и извлекаем из нее все значения:
mysql_select_db(«plata_db»,$db);
$result = mysql_query («SELECT * FROM spec_price»);
Присваиваем значениям адресов порядковые номера в цикле:
$myrow = mysql_fetch_array($result);
do
$spec[] = $myrow[‘url’];
while ($myrow = mysql_fetch_array ($result));
Получаем случайное число от 0 до количества адресов уменьшенного на 1 (3).
srand ((double) microtime() * 1000000);
$random_number = rand(0,count($spec) – 1);
Заносим получившийся php код в самый верх страницы (сразу под тегом <html>):
<?php
$db = mysql_connect(«localhost»,»admin_plata»,»platapass»);
mysql_select_db(«plata_db»,$db);
$result = mysql_query («SELECT * FROM spec_price»);
$myrow = mysql_fetch_array($result);
do
$spec[] = $myrow[‘url’];
while ($myrow = mysql_fetch_array ($result));
srand ((double) microtime() * 1000000);
$random_number = rand(0,count($spec) – 1);
?>
Теперь осталось вставить небольшой php код в атрибуте href изображения со специальной акцией:
<img src=»<?php echo ($spec[$random_number]); ?>» width=»203″ height=»201″ border=»0″>
Теперь при каждом вызове страницы php будет генерировать случайное число и вставлять адрес изображения соответствующий этому числу.
Выносим управляющий код во внешний файл.
Вынесем php код в отдельный файл, с названием db_connect.php и добавим его на каждую страницу сайта при помощи:
<?php
include («blocks/db_connect.php»);
?>
не забываем изменить атрибут href изображений с акцией на всех страницах сайта:
<img src=»<?php echo ($spec[$random_number]); ?>» width=»203″ height=»201″ border=»0″>
Теперь страницы нашего сайта являются динамически изменяемыми и это один из самых простых примеров использования PHP и баз данных для придания сайту большей привлекательности. Более сложные и интересные примеры будут рассмотрены в дополнительных уроках.
Мы научились использовать PHP и базы данных и добавили их к нашему сайту. Теперь можно сказать, что наш сайт практически готов. Осталось несколько финальных штрихов.
В следующем уроке мы проверим правильность кода нашего сайта или, как это еще называется, его валидность.