<html>
<head>
<title></title>
</head>
<body>
<?php
include("config.inc.php");
$otzivi = mysql_query ("SELECT name, otziv, date
FROM otzivi
ORDER BY id DESC");
$myrow_otzivi = mysql_fetch_array ($otzivi);
do{
echo "<table border=1 width=300>";
echo "<tr><td><b>".$myrow_otzivi['name']."</b> ".$myrow_otzivi['date']."<td></tr>";
echo "<tr><td>".$myrow_otzivi['otziv']."<td></tr>";
echo "</table>";
}while($myrow_otzivi = mysql_fetch_array ($otzivi));
if($myrow_otzivi['name']){
/*код цикла*/
}else{
echo 'В базе еще нету ни одного отзыва.';}
?>
</body>
</html>
index.php
<?
//Скрипт отправки отзывов
//Автор: Verst
//email: verstard@gmail.com
//подключаем файл с настройкми БД
include("config.inc.php");
date_default_timezone_set('Europe/Moscow');
//проверяем нажата ли кнопка отправки отзыва
if($_POST['add_otziv']) {
//присваиваем перемнным данные из формы с такими же именами
//htmlspecialchars() служит для защиты передаваемых данных
$name = htmlspecialchars($_POST['name']);
$email = htmlspecialchars($_POST['email']);
$otziv = htmlspecialchars($_POST['otziv']);
$chek = htmlspecialchars($_POST['chek']);
//получаем с какой страницы отправляется отзыв
$page = $_SERVER['REQUEST_URI'];
//задаем время отправки отзыва
$date = date("H:m:s");
//проверка, является ли отправитель человеком
if($chek == 'nobot'){
//проверяем все ли поля заполнены
if($name != '' AND $email != '' AND $otziv != ''){
//проверка правильно ли введен адрес почты
if (!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $email))
{$err = 'Неверно введен е-mail.';}
//если по ходу выполнения скрипта ошибок небыло, отправляем сообщение на почту
if(!$err){
//формируем html сообщение
$massege = "<html><head></head><body>
Новый отзыв на сайте! <br><br>
К странице [URL=http://www.ИМЯ_САЙТА.ru".$page."]http://www.ИМЯ_САЙТА.ru".$page."[/URL], написали отзыв:<br><br>
<table width=100% border=0>
<tr><td width=10></td>
<td><b>".$name."</b> (".$email.")<br>".$date."
<br>".$otziv."
</td>
</tr></table><br>
</body></html>";
//заголовок для письма, с указанием формата сообщения, кодировки и от кого сообщение
$headers = "Content-type: text/html; charset=utf-8 \r\n";
$headers .= "From: Мой сайт <admin@ИМЯ_САЙТА.ru>\r\n";
//отправка письма
if(mail("admin@ИМЯ_САЙТА.ru", "Новый отзыв с Вашего сайта", $massege, $headers))
{$err="Спасибо за отзыв".$name;}else{$err='Ошибка в отправлении';}
//Записываем в БД данные
mysql_query (" INSERT INTO otzivi (name, email, otziv, page, date)
VALUES ('$name', '$email', '$otziv', '$page', '$date')");
}
}else{
$err = 'Вы заполнили не все поля!';
}
}else{
$err='Вы не человек ';
}
}
?>
<html>
<head>
<title></title>
</head>
<body>
<form name="" action="" method="post">
Имя: <input name="name" type="text" value=""><br>
E-mail: <input name="email" type="text" value=""><br>
Сообщение: <textarea name="otziv" rows=5 cols=20 wrap="off"></textarea><br>
Надеюсь Вы не бот? <input name="chek" type="checkbox" value="nobot"><br>
<input type="submit" name="add_otziv" value="Отправить">
</form>
<?
include("view.php"); ?>
</body>
</html>
Вот два файла, помогите разобратся...
ЭТо скрипт добавления отзывов на сайт...
добавляем отзыв и если нажать "Обновить страницу" в браузере, то последний добавленный отзыв добавится еще раз и так до бесконечности, тоесть цикл начинает прокручивать одно и тоже и добавлять еще последний добавленый отзыв....
а также есть проблемы с кодировкой...
посмотрите объясните где? что не так?