Добрый день всем участником форума! У меня вопрос в том - модифицирую один скрипт и вот столкнулся я с одной траблой подскажите пожалуста где я отключаю ограничения ввода символов? PHP: <?PHP /* */ error_reporting(0); include ("dbconfig.php"); //Соеденяемя с базой include ("function.php"); $allSetting = mysql_query("SELECT * FROM ".$dbprefix."setting WHERE id=0;"); //запрашиваем настройки скрипта if ($allSetting) { $SettingA = mysql_fetch_assoc($allSetting); //записываем их в переменную-масив }else{ die('Ошибка извлечения настроек из базы данных'); } include("template/header.tlp"); //Подключаем шаблон header.tlp /* /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Если юзверь нажал добавить, проверяем на | заполненость всех полей и делаем SQL запрос | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| */ if ($_POST['submit']) { if ($_POST['User_Name'] and $_POST['User_Email'] and $_POST['sDescript'] and $_POST['fDescript']) { /*Проверяем все ли заполнено, потом удаляем лишнии симбволы. и делаем запрос к mysql: вставляем все эти данные + выполненость "заказа" ставим 0. И в самом конце выводим что все добавленно успешно.*/ $submitUser_Name= replace_string($_POST['User_Name']); $submitUser_Email= replace_string($_POST['User_Email']); $submitsDescript= replace_string($_POST['sDescript']); $submitfDescript= replace_string($_POST['fDescript']); $sql=@mysql_query("INSERT INTO ".$dbprefix."data VALUES (0, '$submitsDescript', '$submitfDescript', '$submitUser_Name', '$submitUser_Email', '', 0, 0);"); //Удаляем переменные $submitUser_Name= null; $submitUser_Email= null; $submitsDescript= null; $submitfDescript= null; //Если запрос прошел удачно, и если неудачно if($sql) { $to=$SettingA['adminEmailForNotify']; $subject="Новый заказ на {$_SERVER['HTTP_HOST']}"; $message="Уведомляем вас о том, что на {$_SERVER['HTTP_HOST']} появился новая прозьба от посетителя. Имя: {$_POST['User_Name']} Email: {$_POST['User_Email']} Краткое описание: {$_POST['sDescript']} Полное описание: {$_POST['fDescript']} С ув. Any Find."; $headers = "Content-type: text/plain; charset=windows-1251 \r\n"; $headers .= "From: Any Find <no-replay@localhost>\r\n"; @mail($to, $subject, $message, $headers); include("template/table_b.tlp"); echo "Ваш запрос отправлен, вы можете посмотреть состояние на главной странице"; include("template/table_e.tlp"); $sql=null; exit; }else{ include("template/table_b.tlp"); echo "Что-то не так."; include("template/table_e.tlp"); $sql=null; exit; } }else{ //Если заполнены не все поля, выводим ошибку include("template/table_b.tlp"); echo "Заполнены не все поля"; include("template/table_e.tlp"); } }else{ //Если кнопка submit не нажата выводим форму добавления запроса include("template/query_table.tlp"); } /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Выводим список запросов + проверяем на | выполненость и выводим выполнен или не выполнен | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| */ include("template/list_table_b.tlp"); // подключаем начало шаблона $sql=@mysql_query("SELECT * FROM ".$dbprefix."data;"); //делаем запрос If (@mysql_num_rows($sql)<=0) { //если неудачно... echo "Заказов нету."; $sql=null; include("template/list_table_e.tlp"); include("template/footer.tlp"); exit; }; while($order = @mysql_fetch_assoc($sql)){ //проверяем выполнен ли заказ и соотвественно побликуем или нет ссылку + слово выполнен и не выполнен if ($order['execut'] == 0){ $linkid=$order['id'] + 99*99; //нужно для скрития и показа ссылок echo $order['sDescript']."... <a href=\"#\" onclick=\"return hideandshow(".$order['id'].");\" id=\"$linkid\">>>></a> <font color=\"{$SettingA['colorNoEndText']}\"><sup>{$SettingA['textNoEnd']}</sup></font><br>"; echo "<div id=".$order['id']." class=\"acco\"> <font color=\"#5d5d5d\">".$order['fDescript']."</font>\n <br><br></div>\n"; }else{ $linkid=$order['id'] + 99*99; echo "<a href=\"{$order['url']}\" target=\"_blank\">".$order['sDescript']."...</a> <a href=\"#\" onclick=\"return hideandshow(".$order['id'].");\" id=\"$linkid\">>>></a> <font color=\"{$SettingA['colorEndText']}\"><sup>{$SettingA['textEnd']}</sup></font><br>"; echo "<div id=".$order['id']." class=\"acco\"> <font color=\"#5d5d5d\">".$order['fDescript']."</font>\n <br><br></div>\n"; } } $sql=null; /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Подлючаем нажнии шаблоны | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| */ include("template/list_table_e.tlp"); include("template/footer.tlp"); ?> PHP: <?PHP function echoUT($text){ global $begingTemplateTable, $endTemplateTable; echo "$begingTemplateTable \n $text \n $endTemplateTable \n"; } function replace_string_2($string){ return preg_replace("/|script|insert|delete|update|<|>/i", "", $string); } function replace_string_3($string){ return preg_replace("/[^0-9]/i", "", $string); } function replace_string($string){ $str=preg_replace("/[^a-zA-Z0-9а-яёА-Я\.:\";\?@_ ]|drop|script|insert|delete|update|/i", "", $string); return trim(preg_replace("/br/i", "<br>" , $str)); } ?> И ещё чуть не забыл... в ответ на вопрос в форме нужно писать вообщем хтмл кодами <br> как пробел вот надо это убрать что бы работать в обычном режиме Всем заранее спасибо
Если ты говоришь о фильтрации, то PHP: $submitUser_Name= replace_string($_POST['User_Name']); $submitUser_Email= replace_string($_POST['User_Email']); $submitsDescript= replace_string($_POST['sDescript']); $submitfDescript= replace_string($_POST['fDescript']);
слабо понял смысл написанного... тебе нужна заменить <br> на пробел? $str=str_replace('<br>',' ',$str); что собственно и пытается сделать строка return trim(preg_replace("/br/i", "<br>" , $str)); видимо =\
Вот в админке когда я хочу ответить мне надо обязательно писать ответы с хтмл кодами. а мне надо что бы я мог написать без этих кодов