A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: codeigniter/Common.php

Line Number: 148

A PHP Error was encountered

Severity: Notice

Message: Only variables should be passed by reference

Filename: database/DB.php

Line Number: 133

Создаем гостевую книгу на PHP | MasterInWeb.Net

Создаем гостевую книгу на PHP

В этом уроке я покажу Вам, как создать красивую и простую гостевую книгу, которая будет использовать PHP и MySql.

Во-первых, мы должны определить, какие данные мы хоти, чтобы хранились в гостевой книге. Скорее всего – это имя пользователя, адрес электронной почты, дата добавления и комментарии.

Для начала, создаем базу данных под названием 'guestbook', а затем вставим эту таблицу:

				CREATE  TABLE guestbook (
					ID int NOT  NULL AUTO_INCREMENT,
					name  varchar(30),
					email  varchar(60),
					dateposted  date,
					comment  text,
					INDEX (ID)
			    );
				

У нас получилась таблица с названием guestbook, в которой 5 полей.

Следующее, что надо сделать – это создать форму, в которой пользователи будут вносить данные. Создадим новый файл с названием signguestbook.php и создадим форму.

				<form  name="signguestbook" method="POST"  action="addmessage.php">
					<table  cellspacing="4" style="padding: 0px; width: 500px; border:  0px;">
						<tr>
							<td  align="right"><b>Name:</b></td><td><input  type="text" name="name" /></td>
						</tr>
						<tr>
							<td  align="right"><b>EMail:</b></td><td><input  type="text" name="email" /></td>
						</tr>
						<tr>
							<td  colspan="2"  align="center"><b>Comment:</b><br />
								<textarea  name="comment" rows="5" cols="50"></textarea>
							</td>
						</tr>
						<tr>
							<td  colspan="2" align="center"><input  type="reset" name="reset" value="RESET" />
								<input  type="submit" name="submit" value="submit"  />
							</td>
						</tr>
					</table>
				</form>
			    

Наша форма готова. Она пересылает все введенные данные в файл обработчик, которые мы назвали addmessage.php. Обработчик сохраняет данные и заносит их в нашу базу данных.

			   <?php
					function  safeAddSlashes($string) { 
						if  (get_magic_quotes_gpc()) { 
							return $string; 
						} else { 
							return  addslashes($string); 
						} 
					} 
					function  mailcheck($emailadr){ 
						if  (eregi("^[a-zA-Z0-9_.-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$", $emailadr)) {
							return  $emailadr; 
						} else {
							return  false;
						}
					}
					$name =  $_POST['name']; 
					$email =  $_POST['email']; 
					$comment =  $_POST['comment']; 
					$datetime =  date("Y.m.d"); 
					$comment =  safeAddSlashes($comment); 
					$email =  mailcheck($email); 
					$dbHost =  "localhost"; 
					$dbUser =  " guestbook "; 
					$dbPass =  "123456"; 
					$dbname =  "guestbook"; 
					$db =  mysql_connect($dbHost,$dbUser,$dbPass); 
					mysql_select_db($dbname,$db);
					$sql="INSERT  INTO guestbook ('name', 'email', 'dateposted', 'comment') 
					VALUES  ('$name', '$email', '$datetime', '$comment')";
					$result =  mysql_query($sql, $db);
					if  ($result) { 
						echo  'Запись добавлена<br  />'; 
						echo  'Для просмотра гостевой книги нажмите  <a href="/viewguestbook.php" 
						>сюда</a>.';
					} else {
					echo  'Ваше сообщение не может быть добавлено';
					}
			    ?>
			    

Теперь подробнее рассмотрим, как это работают функции.

Функция защиты

				function  safeAddSlashes($string) { 
					if (get_magic_quotes_gpc())  { 
						return  $string; 
					} else { 
						return  addslashes($string); 
					} 
			    }
				

Функция проверки адреса электронной почты пользователя на действительность. Адрес электронной почты раскладывается на две части, текст перед @ и после.

				function  mailcheck($emailadr){ 
					if  (eregi("^[a-zA-Z0-9_.-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4}$", $emailadr)) {
						return  $emailadr; 
					} else {
						return  false; 
					}
			    }
				

Теперь пришло время создать файл, который будет показывать, что находиться в гостевой книге. Создадим новый файл и назовем его viewguestbook.php

			    <!DOCTYPE  html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
					<html> 
						<head>
							<meta  http-equiv="Content-Type" content="text/html;  charset=windows-1251 />
							<title></title>
						</head>
						<body>
							<h3>Гостевая  книга</h3>
							<?php 
								$dbHost =  "localhost"; 
								$dbUser =  ""; 
								$dbPass =  ""; 
								$dbname =  "guestbook";
								$db =  mysql_connect($dbHost,$dbUser,$dbPass); 
								  mysql_select_db($dbname,$db);
								$requete =  "SELECT ID, name, email, dateposted, comment FROM  guestbook ORDER BY ID desc"; 
								  $result =  mysql_query ($requete,$db);
								while($row  = mysql_fetch_assoc($result)) { 
									$name =  $row['name']; 
									$email =  $row['email']; 
									$comment =  $row['comment']; 
									$datetime =  $row["dateposted"];
									if ($email) 
									echo '<a  href="mailto:'.$email.'">'; 
									echo $name; 
									if ($email) 
									echo  '</a>'; 
									echo ' - Добавленно '.$datetime.'<br />'; 
									echo  ''.$comment.''; 
									echo  '<hr />'; 
								} 
							?>
						</body> 
					</html>
			    

Вот и все! Дальше вы можете использовать все свое воображение и доработать, как вам будет угодно.

Просмотров: 14407      Дата: 05.03.2010 12:47:00
Понравился урок? Добавьте его к себе в закладки.

Последние уроки категории:

Сокращение PHP кода

Вы задумывались когда — нибудь о том, что лишний и бесполезный код убивает ваше время разработки приложения/сайта. Хотя это и кажется мелочью, но когда такой мелочи становится много, то время, потраченное впустую, становится ценным. И так давайте посмотрим, что можно и нужно сокращать...

Видимость переменных в PHP

В данном уроке рассматривается область видимости переменных PHP. Объясняется различие локальной и глобальной области видимости, показывается как получить доступ к глобальным переменным внутри функции, как работать с суперглобалами и создавать статические переменные.

Как читать Rss ленты?

Читалки и агрегаторы RSS используются для доступа, чтения и управления периодически-обновляемыми лентами RSS (или Atom), которые генерируются веб-сайтами. Эти ленты предоставляют доступ к последним материалам с этих сайтов.

Установка и настройка PHP+Apache

В этом уроке хотелось бы поднять очень интересную тему – Установка и настройка веб сервера PHP5 + Apache. В интернете довольно много различных инструкций по данной теме, но только вот в основном это копипаст, а не инструкция для человека, я же постараюсь объяснить все намного проще – на пальцах. Причина для установки локального вебсервера довольно много, например скорость выполнения и отладки скриптов, простота загрузки и модернизации контента и еще много чего.

Как выбрать фреймворк

Так уж повелось, что лень – это двигатель прогресса и как бы странно это не звучало, все те блага цивилизации, которые мы имеем сейчас были сделаны в первую очередь для нашего комфорта. Так и программисты чтобы облегчить себе жизнь и тем самым получить возможность создавать более сложные проекты за менее долгое время придумали сделать себе фреймворки.

Комментарии:

  • Антон 29.04.2014 16:22:42
    Попробовал установить, данных скрипт комментариев, прописал все значения БД, пароль и т.д., при отправке сообщения пишет, сообщение не может быть добавлено почему?
    Ответить
  • Я хочу сказать... 06.08.2014 13:47:14
    Сколько будет два плюс три?
    Ответить
  • я твою 16.01.2014 14:00:35
    томат
    Ответить
  • ааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа 16.01.2014 14:01:02
    аааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааааа
    Ответить
  • Осталось: 1000 символов.
    Сохранить комментарий Отправка комментария
lessons
downloads
search
hosting

Ищите хороший и не дорогой хостинг?

Хостинг avahost.ua
VPS VDS - виртуальный выделенный сервер
sistems
Обменник.ws