"; } } // Проверяем правельность введеного url сайта if(!empty($_POST["url"])) { if(!preg_match("/^(?:http:\/\/)?[-0-9a-z_\.]+\.(?:com|edu|gov|int|mil|net|org|biz|info|museum|coop|name|aero|mobi|[a-z][a-z])$/i", $url)) { $action = ""; $error4 = $error4."Ненеправельно введен url сайта."; } } // Проверяем количество символов в сообщении if(!empty($_POST["msg"])) { $lenmsg = strlen($msg); $templen = 0; $temp = strtok($msg, " "); if(strlen($msg)>60) { while($templen < $lenmsg) { if(strlen($temp)>60) { $action = ""; $error2 = $error2."Текст сообщения содержит
слишком много символов без пробелов. "; break; } else { $templen = $templen + strlen($temp) + 1; } $temp = strtok(" "); } } if(strlen($_POST["msg"])>$settings['msg_len']) { $action = ""; $error2 = $error2."Количество знаков в сообщении больше ".$settings['msg_len']." символов!"; } } // Проверяем правельность введеного секюрити кода if(!empty($_POST["securityCode"]) AND $settings['security'] == "yes") { if(isset($_POST['securityCode']) && (isset($_SESSION['securityCode']) || isset($_SESSION['securityCode']))) { if(strtolower($_POST['securityCode'])!= $_SESSION['securityCode'] || strtolower($_POST['securityCode'])!= $_SESSION['securityCode']) { $action = ""; $error5 = $error5."Защитный код введен неверно!"; } } } // Проверяем на заполнение всех полей формы if(empty($_POST["name"])) { $action = ""; $error1 = $error1."Введите свое имя!"; } if(empty($_POST["msg"])) { $action = ""; $error2 = $error2."Введите сообщение!"; } if(empty($_POST["securityCode"]) AND $settings['security'] == "yes") { $action = ""; $error5 = $error5."Введите секюрити код!"; } if(empty($error1) and empty($error2) and empty($error3) and empty($error4) and empty($error5)) { // Антимат $pattern = "/\w{0,5}[хx]([хx\s\!@#\$%\^&*+-\|\/]{0,6})[уy]([уy\s\!@#\$%\^&*+-\|\/]{0,6})[ёiлeеюийя]\w{0,7}|\w{0,6}[пp]([пp\s\!@#\$%\^&*+-\|\/]{0,6})[iие]([iие\s\!@#\$%\^&*+-\|\/]{0,6})[3зс]([3зс\s\!@#\$%\^&*+-\|\/]{0,6})[дd]\w{0,10}|[сcs][уy]([уy\!@#\$%\^&*+-\|\/]{0,6})[4чkк]\w{1,3}|\w{0,4}[bб]([bб\s\!@#\$%\^&*+-\|\/]{0,6})[lл]([lл\s\!@#\$%\^&*+-\|\/]{0,6})[yя]\w{0,10}|\w{0,8}[её][bб][лске@eыиаa][наи@йвл]\w{0,8}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[uу]([uу\s\!@#\$%\^&*+-\|\/]{0,6})[н4ч]\w{0,4}|\w{0,4}[еeё]([еeё\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[нn]([нn\s\!@#\$%\^&*+-\|\/]{0,6})[уy]\w{0,4}|\w{0,4}[еe]([еe\s\!@#\$%\^&*+-\|\/]{0,6})[бb]([бb\s\!@#\$%\^&*+-\|\/]{0,6})[оoаa@]([оoаa@\s\!@#\$%\^&*+-\|\/]{0,6})[тnнt]\w{0,4}|\w{0,10}[ё]([ё\!@#\$%\^&*+-\|\/]{0,6})[б]\w{0,6}|\w{0,4}[pп]([pп\s\!@#\$%\^&*+-\|\/]{0,6})[иeеi]([иeеi\s\!@#\$%\^&*+-\|\/]{0,6})[дd]([дd\s\!@#\$%\^&*+-\|\/]{0,6})[oоаa@еeиi]([oоаa@еeиi\s\!@#\$%\^&*+-\|\/]{0,6})[рr]\w{0,12}/i"; $replacement = "<цензура>"; if($settings['antimat'] == "yes") { $msg = preg_replace($pattern, $replacement, $msg); $city = preg_replace($pattern, $replacement, $city); $name = preg_replace($pattern, $replacement, $name); } // Обрабатываем встроенные тэги $msg = nl2br($msg); $msg = str_replace("\n"," ",$msg); $msg = str_replace("\r"," ",$msg); $msg = str_replace("[b]","",$msg); $msg = str_replace("[/b]","",$msg); $msg = str_replace("[i]","",$msg); $msg = str_replace("[/i]","",$msg); $msg = str_replace("[u]","",$msg); $msg = str_replace("[/u]","",$msg); $msg = str_replace("[s]","",$msg); $msg = str_replace("[/s]","",$msg); $msg = str_replace("[p right]","

",$msg); $msg = str_replace("[p center]","

",$msg); $msg = str_replace("[p left]","

",$msg); $msg = str_replace("[p justify]","

",$msg); $msg = str_replace("[/p]","

",$msg); $msg = str_replace("[font","",$msg); $replace = "/\#\]/i"; $replacement = ">"; $msg = preg_replace($replace, $replacement, $msg); // Заменяем все одинарные кавычки обратными $name = str_replace("'","`",$name); $email = str_replace("'","`",$email); $url = str_replace("'","`",$url); $msg = str_replace("'","`",$msg); $city = str_replace("'","`",$city); // Добавляем запись в базу данных if($settings['admin'] == "yes") $hide = "hide"; else $hide = "show"; // Определяем ip пользователя if($_SERVER['HTTP_X_FORWARDED_FOR']) { $ip = $_SERVER['HTTP_X_FORWARDED_FOR']; } else { $ip = $_SERVER['REMOTE_ADDR']; } // Осуществляем запрос на добавление новой записи $insert = "INSERT INTO ".DB_MSG." VALUES (0, '$name', '$msg', '$city', '$email', '$url', '$ip', '', NOW(), '$hide')"; if(mysql_query($insert)) { // Если в настройках для send выставлена опция yes, то отправляем уведомление о новой добавленой записи if($settings['send'] == "yes") { $subject = "Добавлено новая запись"; $headers = "From: ".$settings['email']." \n"; $headers .= "Content-type: text/plain; charset=windows-1251 \r\n"; $send_msg = "Добавлена новая запись гостевую книгу\n\n"; $send_msg .= "Автор: $name\n"; $send_msg .= "Сообщение: $msg\n"; @mail($settings['email'], $subject, $send_msg, $headers); } // В случае успеха осуществлям возврат на главную страницу echo "\n"; echo "\n"; if($settings['admin'] == "yes") { echo "
Спасибо, Ваше сообщение добавлено!
После проверки администратором оно будет отображено в гостевой книге.
\n"; } else { echo "
Спасибо, Ваше сообщение добавлено!
\n"; } exit(); } else exit("Ошибка при добавлении записи!"); } } if(empty($action)) { // Шапка require "top.php" ?>

Добавление записи

<< Вернуться в гостевую книгу
* Обязательные для заполнения поля
Имя*$error1"; }?> :
E-mail :$error3"; }?>
Город :
Сайт:$error4"; }?>
Полужирный Курсив Подчеркнутый Зачеркнутый    Справа По центру Слева По ширине   

                          
Сообщение*$error2"; }?>
Секюрити код:*$error5"; }?>
Введите этот защитный код