Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|

11.04.2010, 19:58
|
|
Новичок
Регистрация: 12.03.2009
Сообщений: 5
Провел на форуме: 10683
Репутация:
0
|
|
Собственно выслушал всех, вот что получил:
PHP код:
elseif........
elseif ( (preg_match('/[a-z]/i',$user)) && (preg_match('/[а-я]/i',$user)))
{$msg = "Ник содержит запрещенные знаки!";}
elseif (!preg_match("!^[абвгдежзийклмнопрстуфхцчшщъыьэюяАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯa-z1-9@\\*\\)\\(\\?\\!\\-_\\]\\[=~]+$!i",$user))
{$msg = "Ник содержит запрещенные знаки!";}
elseif...
Как то вот так, и все нормально робит xD
з.ы. с русскими буквами глюки, если их проверяешь в отдельном выражении от латыни то принимает "а-яi", а если в одном то приходится весь алфавит в нижнем и верхнем регистре писать, мб кто то подскажет как избавиться от этого
|
|
|

11.04.2010, 22:51
|
|
Участник форума
Регистрация: 20.11.2006
Сообщений: 172
Провел на форуме: 539954
Репутация:
106
|
|
Есть среди прочей лабуды на странице такое сочетание:
Код:
всякий разный текст... += "123456"; всякий разный текст...
Где "всякий разный текст" - это текст, он меняется и тд.
+="123456" - остается постоянным, т.е. 123456 может меняться, но "+=" есть всегда.
Нужно из такой страницы взять значения после += которые идут в кавычках. Т.е. только значения. В данном случае 123456.
Заранее спасибо!
Последний раз редактировалось ++Norton++; 11.04.2010 в 22:57..
|
|
|

11.04.2010, 23:05
|
|
Участник форума
Регистрация: 31.01.2010
Сообщений: 170
Провел на форуме: 1442841
Репутация:
63
|
|
PHP код:
preg_match('/\+=\s?"(.+)";/',$text, $res);
|
|
|

14.04.2010, 17:36
|
|
Участник форума
Регистрация: 14.01.2009
Сообщений: 194
Провел на форуме: 798217
Репутация:
44
|
|
Проблема при проверки имени пользователя.
Имя пользователя может быть как на латинице так и на киррилице.
При использование Кирилицы (русского) выдает ошибку.
Вот код
PHP код:
function name_check($name){
$name = trim($name);
if (strlen($name) >= 3){
if (strlen($name) <= 60){
if (preg_match("([^а-яА-Яa-zA-Z-]+)",$name)) {
$err = 1;
}
else {
$err = 0;
}
} else $err = 2; //очень длинный логин
} else $err = 3; //очень короткий логин
return $err;
}
Как исправить?
|
|
|

14.04.2010, 17:53
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
Сообщение от ZnikiR
Проблема при проверки имени пользователя.
Имя пользователя может быть как на латинице так и на киррилице.
При использование Кирилицы (русского) выдает ошибку.
Вот код
PHP код:
function name_check($name){
$name = trim($name);
if (strlen($name) >= 3){
if (strlen($name) <= 60){
if (preg_match("([^а-яА-Яa-zA-Z-]+)",$name)) {
$err = 1;
}
else {
$err = 0;
}
} else $err = 2; //очень длинный логин
} else $err = 3; //очень короткий логин
return $err;
}
Как исправить?
PHP код:
<?php
function name_check($name){
$name = trim($name);
if (strlen($name) >= 3){
if (strlen($name) <= 60){
if (preg_match("#^([а-яА-Яa-zA-Z\-]+)$#",$name)) {
$err = 1;
}
else {
$err = 0;
}
} else $err = 2; //очень длинный логин
} else $err = 3; //очень короткий логин
return $err;
}
echo name_check('Василий');
?>
=/
|
|
|

14.04.2010, 21:24
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
есть строка вида
Код:
<a clas="..." href="...">info</a>, <a clas="..." href="...">info2</a>, <a clas="..." href="...">info3</a>,........
нужно выдрать все между тегами <a></a> конструкция будет одинакова
PHP код:
preg_match('#">(.*?)<\/a>#',$in,$out);
, как эту конструкцию повторять,??? ведь может быть и 1 повтор и 10 повторов конструкции.
|
|
|

14.04.2010, 21:31
|
|
Участник форума
Регистрация: 14.01.2009
Сообщений: 194
Провел на форуме: 798217
Репутация:
44
|
|
2 m0Hze
У меня
PHP код:
echo name_check('Василий'); //равно 1,т.е. ошибка.
Может это из-за настроек денвера?
Или я неправильно код прочита?
Последний раз редактировалось ZnikiR; 14.04.2010 в 21:39..
|
|
|

14.04.2010, 22:06
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
Сообщение от svesve
есть строка вида
Код:
<a clas="..." href="...">info</a>, <a clas="..." href="...">info2</a>, <a clas="..." href="...">info3</a>,........
нужно выдрать все между тегами <a></a> конструкция будет одинакова
PHP код:
preg_match('#">(.*?)<\/a>#',$in,$out);
, как эту конструкцию повторять,??? ведь может быть и 1 повтор и 10 повторов конструкции.
preg_match_ all?
2 m0Hze:
if (preg_match("#^([а-яА-Яa-zA-Z\-]+)$#",$name)) {
есть такой модификатор - "i"
Последний раз редактировалось Pashkela; 14.04.2010 в 22:08..
|
|
|

14.04.2010, 22:11
|
|
Участник форума
Регистрация: 14.01.2009
Сообщений: 194
Провел на форуме: 798217
Репутация:
44
|
|
есть такой модификатор - "i"
Не могу найти его.
Символ "i" после закрывающего ограничителя шаблона означает регистронезависимый поисК?
Сейчас приведу код с комментариями,скажите я правильно его понял?
PHP код:
function name_check($name){
$name = trim($name);
if (strlen($name) >= 3){
if (strlen($name) <= 60){
if (preg_match("/^([а-яa-z\-]+)$/i",$name)) {
print_r(preg_match("/^([а-яa-z\-]+)$/i",$name));
$err = 1; // ошибка:используются неразрешенные символы
}
else {
$err = 2; // всё супер,используються разрешенные символы
}
} else $err = 3; //очень длинное имя
} else $err = 4; //очень короткое имя
return $err;
}
Последний раз редактировалось ZnikiR; 14.04.2010 в 22:48..
|
|
|

14.04.2010, 22:35
|
|
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
Провел на форуме: 9220514
Репутация:
3338
|
|
Да, но твою проблему это не решит, т.к. ты совершенно не владеешь русским языком и даже не можешь нормально сформулировать вопрос, а именно - донести, что вообще требуется от скрипта без своих мегаговнокодов, просто спросить, типо "хочу, чтобы ....., как сделать"
Твоё "Как исправить?" никак не упрощает ситуацию
PS: Если ми правильно протелепатировал - последний пост предыдущей страницы, иногда читать надо не только свои вопросы
Последний раз редактировалось Pashkela; 14.04.2010 в 22:42..
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|