![]() |
|
| Правила Форума редакция от 22.06.2020 |
|
|||||||
|
|
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже. |
|
![]() |
|
|
Опции темы | Опции просмотра |
Language
|
|
|
#1
|
|
Неактивный пользователь
Пол:
Регистрация: 27.09.2005
Сообщений: 11
Репутация: 0
|
<?php
class mod_room_main { public $content; public function __construct() { function ins_smile($num) {if ($num>=1 && $num<=49) return '<img src="/img/smiles/'.$num.'.gif" alt="" />';return ':'.$num.':';} // Если форма отправлена if (!empty($_POST)) { if (isset($_POST['msg']['name'])) { $_POST['msg']['name']=trim($_POST['msg']['name']); $banName=array('пися','ПИСЯ','пиcя','Пися','Пиcя', 'ПИCЯ'); $is_ban=cms::$data_store->queryRes("SELECT `ip` AS `res` FROM `base_ban` WHERE `ip`='%s'",$_SERVER['REMOTE_ADDR']); if (in_array($_POST['msg']['name'],$banName) && empty($is_ban)) cms::$data_store->query("INSERT INTO `base_ban` (`ip`,`date`) VALUE ('%s','%s')",$_SERVER['REMOTE_ADDR'],date("Y-m-d")); } // Если все нормально, выполняем запись if (empty($_POST['email']) && isset($_POST['msg']['name']) && empty($_POST['www']) && strlen($_POST['msg']['msg'])>0 && $_POST['msg']['msg']!=$data=cms::$data_store->queryRes("SELECT `msg` AS `res` FROM `mod_room` WHERE `pid`=0 AND `visible`=1 ORDER BY `id` DESC LIMIT 1")) { // Проверяем бан лист $ban=cms::$data_store->queryRes("SELECT `ip` AS `res` FROM `base_ban` WHERE `ip`='%s'",$_SERVER['REMOTE_ADDR']); if (empty($ban)) { $this->addMsg(); header('Location:'.cms::$uri_part); } else { work_work::Alert('С вашего адреса ('.$_SERVER['REMOTE_ADDR'].') запрещена отправка сообщений'); } } } // Количество сообщений на страницу $msgp=cms::$data_store->queryRes("SELECT `value` AS `res` FROM `mod_settings` WHERE `id_mod`=%d AND `key`='roompage'",cms::$id_mod); // Номер страницы if (empty(cms::$uri_ar_mod[1])) cms::$uri_ar_mod[1]=1; else cms::$uri_ar_mod[1]=intval(cms::$uri_ar_mod[1]); // Количество сообщений $c_msg=cms::$data_store->queryRes("SELECT count(*) AS `res` FROM `mod_room` WHERE `id_mod`=%d AND `visible`=1",cms::$id_mod); // Количество страниц $pages=ceil($c_msg/$msgp); // С какого сообщения начинать вывод if (empty(cms::$uri_ar_mod[1])) $begin=0; else $begin=abs($msgp*cms::$uri_ar_mod[1]-$msgp); $data=cms::$data_store->queryArray("SELECT `ip`,`id`,`name`,`msg`,DATE_FORMAT(`time`,'%%d.%%m .%%Y, %%H:%%i') AS `date`,`ip` FROM `mod_room` WHERE `id_mod`=%d AND `visible`=1 ORDER BY `id` DESC LIMIT %d, %d",cms::$id_mod,$begin,$msgp); foreach ($data as &$val) { $val['msg']=preg_replace('# [0-9]{1,2}):#e','ins_smile(\\1)',htmlspecialchars(wordw rap(nl2br($val['msg']),100,' ',1)));$val['msg']=preg_replace('#http://[a-z\./0-9-\?\=\&\_]+#',' <a href="\0">\0</a>',$val['msg']); $val['msg']=preg_replace('#[^http://]([w]{3}[a-z\.0-9/-\?\&\#]{1,})#',' <a href="http://\1">\1</a>',$val['msg']); $val['msg']=str_replace('<br />','<br />',$val['msg']); if (empty($val['name'])) $val['name']='<strong>Гость</strong>'; } $link=new mod_room_template($data,cms::$uri_ar_mod[1],$pages); $this->content=$link->content; } // Добавить сообщение private function addMsg() { $maxlen=cms::$data_store->queryRes("SELECT `value` AS `res` FROM `mod_settings` WHERE `id_mod`=%d AND `key`='roommsg'",cms::$id_mod); $_POST['msg']['id_mod']=cms::$id_mod; $_POST['msg']['ip']=$_SERVER['REMOTE_ADDR']; $_POST['msg']['time']=date('Y-m-d H:i:s'); $_POST['msg']['msg']=substr($_POST['msg']['msg'],0,$maxlen); if (1==cms::$data_store->queryRes("SELECT `value` AS `res` FROM `mod_settings` WHERE `id_mod`=%d AND `key`='roommail'",cms::$id_mod)) { $mail=cms::$data_store->queryRes("SELECT `value` AS `res` FROM `base_settings` WHERE `site`=%d AND `key`='admin_mail'",cms::$id_site); if (!empty($mail)) { $msg[]="URL: {$_SERVER['SERVER_NAME']}{$_SERVER['REQUEST_URI']}\n"; $msg[]="Имя: {$_POST['msg']['name']}\n"; $msg[]="IP: {$_POST['msg']['ip']}\n"; $msg[]="Сообщение: {$_POST['msg']['msg']}\n"; mail($mail,'Новое сообщение на '.$_SERVER['SERVER_NAME'],implode($msg),'Content-Type:text/plain; charset=utf-8'); } } setcookie('roomname',$_POST['msg']['name'],time()+1000000,'/'); cms::$data_store->queryInsert('mod_room',$_POST['msg']); } } ?> После этого пишет запись в базе с значением id=0, и кидает на конец страницы. И не дает больше записи в книгу Последний раз редактировалось mdk; 03.04.2009 в 09:53.. |
|
|
|
| Реклама: | i9-14900kf цена | Лучшие фруктовые пюре у нас! Смотри: сироп роза цена - Агробар | Лучшие цены на бытовую технику: газовая плита цена в москве - у нас! | теплоход семен буденный навигация 2026 | материнские платы AM5 |
|
|
#2
|
|
Новичок
Пол:
Регистрация: 10.07.2008
Сообщений: 19
Репутация: 3
|
не понял почему :
(in_array($_POST['msg']['name'],$banName) && empty($is_ban)) - именно и имеется ввиду что если имя входит в массив запрещенных И уже присустствует в бан листе? зачем тогда туда писать потом новую запись если уже есть в бан листе? шо за cms то ? |
|
|
|
|
|
#3
|
|
Неактивный пользователь
Пол:
Регистрация: 16.09.2009
Сообщений: 5
Репутация: 0
|
Нашите код в тег
|
|
|
|
|
|
#4
|
|
Неактивный пользователь
Пол:
Регистрация: 31.07.2008
Сообщений: 4
Репутация: -1
|
cms???
Добавлено через 1 минуту CMS ??? Последний раз редактировалось Makros3; 07.01.2010 в 13:38.. Причина: Добавлено сообщение |
|
|
|
|
|
#5
|
|||||||||||||||||||
|
Не буду начинать новую тему! Дабы вопрос пустяковый для тех кто знает! Прошу у вас помощи
Имею следующий вид капчи:
Получается, что имеется поле где нужно ввести правильный ответ, и после нужно нажать на кнопку "Подтвердить". Хтел бы сделать так чтобы выбор правильного ответа производилось, допустим, выводом только 4-х разных значений, где я мог выбрать правильный! И это действие было бы окончательным. Заранее спасибо! ![]()
__________________
РЕКЛАМА ЗАПРЕЩЕНА |
||||||||||||||||||||
|
|
|
|
|
#6
|
|
Неактивный пользователь
Регистрация: 13.03.2010
Сообщений: 11
Репутация: 1
|
Если я прально понял, то вам надо вот что-то типа того: PHP код:
|
|
|
|
![]() |
Похожие темы
|
||||
| Тема | Автор | Раздел | Ответов | Последнее сообщение |
| Помогите с компонентами или кодом для PARADOX | clear2121 | Borland C++ Builder | 0 | 08.01.2010 17:20 |
| помогите с кодом | evrei | Java | 2 | 05.09.2008 10:36 |
| Помогите с кодом, цвет ссылки | ArtG | Вeб Дизайн | 8 | 30.01.2008 11:21 |
| Помогите с регистрационным кодом для программы FastStone Capture 5,5 | Konstantin71 | Архив | 2 | 18.06.2007 17:31 |
| помогите с кодом | armag | Вeб Дизайн | 49 | 17.12.2006 22:39 |
|
|