Юрий Федорович
Новичок
Непонятная ошибка при вводе контента из базы
Сделал сайт на РНР, в котором правая часть страницы заполнялась из файлов. Страница имеет вид: http://stori-chehli.ru/service/
Решил разместить контенты страниц и др. информацию в БД и оттуда заполнять страницы. Все страницы сайта нормальные, кроме одной: http://elena.tdrestol.ru/service/ Контент этой страницы отличается наличием почтового скрипта. Такое впечатление, что РНР воспринял знак > в проверке длины имени как тэг, закрывающий скрипт РНР. Как это исправить - не знаю. Буду благодарен, если кто-нибудь из опытных юзеров подскажет, как исправить ситуацию. Спасибо.
Ниже текст контента:
<!--right text-->
<blockquote>
<h2>
Услуги мастера.</h2>
<h4> - Разработка дизайна помещения.*<br>
- Пошив штор, гардин, ламбрекенов, покрывал, <br>
скатертей, салфеток, чехлов на мебель.<br>
- Драпировка стен, потолков.<br>
- Установка карнизов.<br>
- Монтаж штор.</h4>
<p class="text">*Бесплатно при заключении договора.</p>
<p class="style1">Для получения дополнительной информации позвоните по телефону<br>
или отправьте сообщение, заполнив эту форму.</p>
<? // aceweb sendmail //
$myemail= "[email protected]"; // Ваш электронный адрес
$refreshpage=""; // Страница, куда возвращается человек после отправки сообщения
// оставьте пустым и тогда обновиться страница, где установлена эта форма
$maxname="30"; // Максимальное кол-во символов в имени
$maxmsg="1500"; // Максимальное количество символов в сообщении
// Далее настраивается цвет таблицы и текста: цвет таблицы и цвет текста в заголовке таблицы
// Для Выбора схемы - раскоментируйте её и закоментируйте текущую символами //
//$bdcolor="#79BBEF"; $fcolor="#FFFFFF"; // Светлоголубой
//$bdcolor="#FF9A00"; $fcolor="#FFFFFF"; // Оранжевый
//$bdcolor="#FFE51A"; $fcolor="#00253B"; // Жёлтый
//$bdcolor="#00E900"; $fcolor="#00253B"; // Светло-зеленый
//$bdcolor="#007800"; $fcolor="#FFFFFF"; // Темно зеленый
//$bdcolor="#D2A500"; $fcolor="#FFFFFF"; // Золотой
//$bdcolor="#BCC0C0"; $fcolor="#FFFFFF"; // Серый
$bdcolor="#00253B"; $fcolor="#FFFFFF"; // Темно-синий
$addstyle="style='font-family: Verdana; font-size: 12px; text-decoration: none; color: #000000; cursor: default; background-color: #FFFFFF; border-style: solid; border-width: 1px; border-color: #000000;'";
$back="<center>Вернитесь <a href='javascript:history.back(1)'><B>назад</B></a>"; // Удобная строка
//******************* Ниже лучше ничего не трогать ************************//
print "<left><table border=0 width=310 cellpadding=1 cellspacing=0 bgcolor=$bdcolor><tr><td>
<table border=0 width=100% cellpadding=1 cellspacing=0 bgcolor=$bdcolor><tr><td>";
// Событие проверки на ошибки и отправки сообщения //
if (isset($_GET['event'])) {
if ($_GET['event']=="add") // if ($event =="add")
{
$name=$_POST['name']; $msg=$_POST['msg']; $email= $_POST['email'];
if ($name == "" || strlen($name) > $maxname) {print "$back Вы не ввели имя, или вввели слишком длинное имя!</B></center>"; exit;}
if ($msg == "" || strlen($msg) > $maxmsg) {print "$back Ваше сообщение или пустое или превышает $maxmsg символов.</B></center>"; exit;}
if (isset($_POST['email'])) { if(!preg_match("/^[a-z0-9\.\-_]+@[a-z0-9\-_]+\.([a-z0-9\-_]+\.)*?[a-z]+$/is", $_POST['email']) or $_POST['email']=="") {print "$back и введите корректный E-mail адрес!</B></center>"; exit;}} else {print"Введите емайл!"; exit;}
// Настройки для отправки писем
$headers=null;
$headers.="Content-Type: text/plain; charset=windows-1251\r\n";
$headers.="From: ".$name." <".$email.">\r\n";
$headers.="Reply-To: ".$name." <".$email.">\r\n";
$headers.="X-Mailer: PHP/".phpversion()."\r\n";
// Собираем всю информацию в теле письма
$host=$_SERVER["HTTP_HOST"]; $self=$_SERVER["PHP_SELF"];
$allmsg='1. Отправлено со страницы: http://'.$host.$self.chr(13).chr(10).
'2. Имя посетителя: '.$name.chr(13).chr(10).
'3. E-mail: '.$email.chr(13).chr(10).
'4. Сообщение: '.$msg.chr(13).chr(10);
// Отправляем письмо майлеру на съедение ;-)
mail("$myemail", "Сообщение от $name", $allmsg, $headers);
// Пишем пользователю "Спасибо" и обновляем страницу через JavaScript
if ($refreshpage=="") {$refreshpage="index.php";}
print "<script language='Javascript'><!--
function reload() {location = \"$refreshpage\"}; setTimeout('reload()', 2500);
//--></script>
<center><font size=+1><B>Cообщение отправлено</B></font>
</td></tr><tr><td width=100% bgcolor=#FFFFFF>
<BR><BR><BR><center><table border=0 width=300><tr><td></center>
Спасибо <B>$name</B>, <BR>Ваше сообщение <B>успешно отправлено.</B><BR>
Нажмите <B><a href=\"$refreshpage\"> здесь</a></B> для возврата. </td></tr></table></center><BR><BR><BR>";
}
} else { // Типо главной страницы
print "
<center><b><font size=+1 color=$fcolor>Отправить сообщение мастеру</font></b></center>
</td></tr><tr><td colspan=2 width=100% bgcolor=#FFFFFF><center>
<form action=index.php?event=add method=post name=REPLIER>
<table border=0 cellpadding=0 cellspacing=0 width=300><tr><td>
<B>Ваше имя</B></td><td>Ваш E-mail</td></tr><tr>
<td><input type=text $addstyle value='' name=name size=20></td>
<td><input type=text $addstyle value='' name=email size=23></td></tr>
<tr><td colspan=2><B>Сообщение</B></td></tr>
<tr><td colspan=2><textarea $addstyle cols=46 rows=6 size=500 name=msg></textarea>
<center><input type=submit $addstyle value= 'Отправить'></form></td></tr></table>";
}
?>
</blockquote>
</td></tr></table></td></tr></table>
<br>
<!--right text-->
Сделал сайт на РНР, в котором правая часть страницы заполнялась из файлов. Страница имеет вид: http://stori-chehli.ru/service/
Решил разместить контенты страниц и др. информацию в БД и оттуда заполнять страницы. Все страницы сайта нормальные, кроме одной: http://elena.tdrestol.ru/service/ Контент этой страницы отличается наличием почтового скрипта. Такое впечатление, что РНР воспринял знак > в проверке длины имени как тэг, закрывающий скрипт РНР. Как это исправить - не знаю. Буду благодарен, если кто-нибудь из опытных юзеров подскажет, как исправить ситуацию. Спасибо.
Ниже текст контента:
<!--right text-->
<blockquote>
<h2>
Услуги мастера.</h2>
<h4> - Разработка дизайна помещения.*<br>
- Пошив штор, гардин, ламбрекенов, покрывал, <br>
скатертей, салфеток, чехлов на мебель.<br>
- Драпировка стен, потолков.<br>
- Установка карнизов.<br>
- Монтаж штор.</h4>
<p class="text">*Бесплатно при заключении договора.</p>
<p class="style1">Для получения дополнительной информации позвоните по телефону<br>
или отправьте сообщение, заполнив эту форму.</p>
<? // aceweb sendmail //
$myemail= "[email protected]"; // Ваш электронный адрес
$refreshpage=""; // Страница, куда возвращается человек после отправки сообщения
// оставьте пустым и тогда обновиться страница, где установлена эта форма
$maxname="30"; // Максимальное кол-во символов в имени
$maxmsg="1500"; // Максимальное количество символов в сообщении
// Далее настраивается цвет таблицы и текста: цвет таблицы и цвет текста в заголовке таблицы
// Для Выбора схемы - раскоментируйте её и закоментируйте текущую символами //
//$bdcolor="#79BBEF"; $fcolor="#FFFFFF"; // Светлоголубой
//$bdcolor="#FF9A00"; $fcolor="#FFFFFF"; // Оранжевый
//$bdcolor="#FFE51A"; $fcolor="#00253B"; // Жёлтый
//$bdcolor="#00E900"; $fcolor="#00253B"; // Светло-зеленый
//$bdcolor="#007800"; $fcolor="#FFFFFF"; // Темно зеленый
//$bdcolor="#D2A500"; $fcolor="#FFFFFF"; // Золотой
//$bdcolor="#BCC0C0"; $fcolor="#FFFFFF"; // Серый
$bdcolor="#00253B"; $fcolor="#FFFFFF"; // Темно-синий
$addstyle="style='font-family: Verdana; font-size: 12px; text-decoration: none; color: #000000; cursor: default; background-color: #FFFFFF; border-style: solid; border-width: 1px; border-color: #000000;'";
$back="<center>Вернитесь <a href='javascript:history.back(1)'><B>назад</B></a>"; // Удобная строка
//******************* Ниже лучше ничего не трогать ************************//
print "<left><table border=0 width=310 cellpadding=1 cellspacing=0 bgcolor=$bdcolor><tr><td>
<table border=0 width=100% cellpadding=1 cellspacing=0 bgcolor=$bdcolor><tr><td>";
// Событие проверки на ошибки и отправки сообщения //
if (isset($_GET['event'])) {
if ($_GET['event']=="add") // if ($event =="add")
{
$name=$_POST['name']; $msg=$_POST['msg']; $email= $_POST['email'];
if ($name == "" || strlen($name) > $maxname) {print "$back Вы не ввели имя, или вввели слишком длинное имя!</B></center>"; exit;}
if ($msg == "" || strlen($msg) > $maxmsg) {print "$back Ваше сообщение или пустое или превышает $maxmsg символов.</B></center>"; exit;}
if (isset($_POST['email'])) { if(!preg_match("/^[a-z0-9\.\-_]+@[a-z0-9\-_]+\.([a-z0-9\-_]+\.)*?[a-z]+$/is", $_POST['email']) or $_POST['email']=="") {print "$back и введите корректный E-mail адрес!</B></center>"; exit;}} else {print"Введите емайл!"; exit;}
// Настройки для отправки писем
$headers=null;
$headers.="Content-Type: text/plain; charset=windows-1251\r\n";
$headers.="From: ".$name." <".$email.">\r\n";
$headers.="Reply-To: ".$name." <".$email.">\r\n";
$headers.="X-Mailer: PHP/".phpversion()."\r\n";
// Собираем всю информацию в теле письма
$host=$_SERVER["HTTP_HOST"]; $self=$_SERVER["PHP_SELF"];
$allmsg='1. Отправлено со страницы: http://'.$host.$self.chr(13).chr(10).
'2. Имя посетителя: '.$name.chr(13).chr(10).
'3. E-mail: '.$email.chr(13).chr(10).
'4. Сообщение: '.$msg.chr(13).chr(10);
// Отправляем письмо майлеру на съедение ;-)
mail("$myemail", "Сообщение от $name", $allmsg, $headers);
// Пишем пользователю "Спасибо" и обновляем страницу через JavaScript
if ($refreshpage=="") {$refreshpage="index.php";}
print "<script language='Javascript'><!--
function reload() {location = \"$refreshpage\"}; setTimeout('reload()', 2500);
//--></script>
<center><font size=+1><B>Cообщение отправлено</B></font>
</td></tr><tr><td width=100% bgcolor=#FFFFFF>
<BR><BR><BR><center><table border=0 width=300><tr><td></center>
Спасибо <B>$name</B>, <BR>Ваше сообщение <B>успешно отправлено.</B><BR>
Нажмите <B><a href=\"$refreshpage\"> здесь</a></B> для возврата. </td></tr></table></center><BR><BR><BR>";
}
} else { // Типо главной страницы
print "
<center><b><font size=+1 color=$fcolor>Отправить сообщение мастеру</font></b></center>
</td></tr><tr><td colspan=2 width=100% bgcolor=#FFFFFF><center>
<form action=index.php?event=add method=post name=REPLIER>
<table border=0 cellpadding=0 cellspacing=0 width=300><tr><td>
<B>Ваше имя</B></td><td>Ваш E-mail</td></tr><tr>
<td><input type=text $addstyle value='' name=name size=20></td>
<td><input type=text $addstyle value='' name=email size=23></td></tr>
<tr><td colspan=2><B>Сообщение</B></td></tr>
<tr><td colspan=2><textarea $addstyle cols=46 rows=6 size=500 name=msg></textarea>
<center><input type=submit $addstyle value= 'Отправить'></form></td></tr></table>";
}
?>
</blockquote>
</td></tr></table></td></tr></table>
<br>
<!--right text-->