меню

Результат, который мы получим, можно использовать на своей страничке, в качестве скрипта отзывов или еще чего-то подобного. Статья ориентирована на то, что вы уже знакомы с PHP и MySQL, т.е. знаете азы. Для начала устанавливаем локальный сервер на вашем компьютере. В ОС Windows удобнее установить программу Denwer, скачать её можно на официальном сайте разработчиков - http://denwer.ru. Установка очень проста, поэтому на этом нет смысла останавливаться, перейдём непосредственно к созданию гостевой книги.

Сначала составим небольшое ТЗ, то есть обговорим все функции, которые нам нужны.

Например можно сделать следующее:

  • Ввод данных в форму (Заполнение формы).
  • Отправка обработчику.
  • Вставка в БД MySQL.
  • Вывод комментариев.

Теперь заходим в PHPmyAdmin и создаём БД, я назвал её «gbook», вы же можете назвать так, как вам нравится. Далее создаём таблицу, называем «comments», в нашей таблице будет всего 3 поля, а именно - это «id», «login», «text». Поле «id» будет AUTO_INCREMENT. Далее добавим в нашу созданную таблицу тестовую запись, щелкаем мышью на вкладке SQL и пишем следующее:

        
INSERT INTO `gbook`.`comments` (`id`, `login`, `text`) VALUES (NULL, 'Sexy Devil', 'Это 
тестовый комментарий.');
        

Либо можно сделать это проще, если вы не знакомы с запросами в БД, просто щелкните по вкладке «Вставка» и вписывайте нужные данные, кроме поля «id», т.к. оно AUTO_INCREMENT и вставляется автоматически.

Закончили работу с БД и теперь перейдём к созданию файлов, необходимых для работы нашего скрипта.

Первый файл будет называться «index.php», в нём мы будем размещать вывод комментариев и форму ввода.

Откроем его любым текстовым редактором, в моём случае это стандартный редактор «Gedit» и начнём работать.

Для начала сделаем структуру обычного HTML:

        
<html> 
<heade> 
<title>Это гостевая книга!</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
</head> 
<body> 
</body> 
</html>
        

Затем подключимся к БД:

        
//БД 
$db = "gbook"; 
//Хостинг 
$host = "localhost"; 
//Логин и пароль пользователя 
$user = "root"; 
$pass = ""; 
$connect = mysql_connect($host, $user, $pass); 
mysql_select_db($db); 
mysql_query('SET NAMES UTF8'); 
if($connect == true) 
{ 
echo "Подключение прошло успешно!" ; 
} 
else 
{ 
exit("Ошибка подключения к БД!") ; 
}  
        

Обновите страницу в браузере и если не каких ошибок не возникло, вы увидите следующее сообщение:

Подключение прошло успешно!

Теперь нам нужно вывести наши данные в таблице на экран, печатаем следующее:

        
$res = mysql_query("SELECT * FROM `comments`") ; 
while($row = mysql_fetch_assoc($res)) 
{ 
echo "<div>" ; 
echo $row[login] . "<br>" ; 
echo $row[text] ; 
echo "</div>" ; 
}  
        

Обновляем страничку, если всё сделали правильно, вы увидите нашу запись:

Sexy Devil

Это тестовый комментарий.

Снова войдите в PHPmyAdmin и попробуйте что-нибудь добавить в нашу таблицу, после чего обновите страницу и если всё правильно получилось, после нашей первой записи, появится вторая. Продолжим, вывод комментариев закончен, теперь сделаем форму добавления, мой вариант:

        
<form method="POST" action="get.php">
Ваше имя:<br /> <input type="text" name="login">
<br />
Комментарий:<br /> <textarea name="text"></textarea>
<br /> 
<input type="submit" name="add_com" value=" Добавить комментарий "> 
</form>
        

Создаём новый файл, который будет обрабатывать нашу форму. Я назвал его «get.php» Подключаемся к БД(как подключится, можно посмотреть чуть выше:)).

Присваиваем переменным соответствующие значения, переданные методом POST:

        
$login = $_POST['login'] ; 
$text = $_POST['text'] ;  
        

Далее проверяем, существуют ли эти самые переменные и не пустые ли они:

        
if(isset($login) && isset($text) && !empty($login) && !empty($text)) 
{
        

Обрабатываем переменные:

        
$login = htmlspecialchars(trim($login)); 
$text = htmlspecialchars(trim($text)); 
        

Вставляем результат в БД:

        
$res = mysql_query("INSERT INTO `comments` (`login`, `text`) VALUES ('$login', '$text')") ;  
        

Если всё прошло успешно, произвести редирект на главную страницу:

        
if($res == true) 
{ 
echo "<meta http-equiv='Refresh' content='0; URL=index.php'>"; 
} 
else { echo "Ошибка добавления записи в БД!" ; } 
} 
else 
{ 
echo "Заполните соответствующие поля!" ; 
}  
        

Теперь можете добавлять сообщения и они точно также будут выводится. Простая гостевая книга готова! Вы можете использовать её на своём сайте!

Возможно, вам будет интересно

Создание ZIP-архива на PHP

Создание ZIP-архивов на PHP тема интересна большому числу людей, ведь ZIP-архивирование на PHP весьма популярная тема. И в этой статье покажем пример, как создаётся ZIP-архив через PHP-скрипт.

Чтение и запись данных Excel из приложений PHP

Узнайте, как использовать поддержку XML в PHP для чтения данных, выгруженных из Microsoft® Excel® 2003 в XML-формате, и как экспортировать данные в XML-формате из PHP-приложений для использования в электронных таблицах Excel.

Создание простой MVC-системы на PHP 5

В этом руководстве Вы узнаете, как построить простую систему по архитектуре MVC (Model-View-Controller, Модель-Отображение-Контроллер) на PHP 5.1 с использованием возможностей.

Загрузка курса валют с сайта ЦентроБанка

В сети много статей по поводу загрузки курса валют с сайта ЦБ. Мы решили поделится еще одним простым способом. Источником информации об официальном курсе валюты служит сайт Центробанка Российской Федерации.

Оформление заявки

Документы на создание сайта

Изучите наше коммерческое предложение, заполните БРИФ и отправьте его на почту maxidebox@list.ru. Изучив все пожелания из БРИФ-а, обратным ответом оповестим Вас по стоимости разработке, ответим на вопросы.

КП на создание сайта Коммерческое предложение на созданеи сайта

Мы берем на себя ответственность за все стадии работы и полностью избавляем клиентов от забот и необходимости вникать в тонкости.

Скачать БРИФ (акета) на создание сайта Скачать БРИФ (акета) на создание сайта

Зополните у БРИФ-а все необходимые поля. Сделайте краткое описание к каждому из пунктов анкеты, привидите примеры в соответсвующий пунктах - это позволит лучше понять Ваши ожидания и требования к сайту