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

02.03.2007, 13:06
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
php: вопрос с алгоритмом
есть строка... есть 2 массива.
в массиве 1 - что не может быть в переменной
в массиве 2 - что может быть в переменной.
так вот суть вопрос:
сделать так, чтобы если в массиве есть плохое слово и этого слова нету в разрешенных, то скрипт останавливает.
если есть пллохое слово и это слово есть в разершенных, то скрипт идет дальше.
например:
PHP код:
$bad_array = array('test', 'test2', 'test3');
$allow_array = array(
'xaxa' => array('test', 'test3'),
);
если str=test test3 или str=test3 или str=test, то продолжаем,
а если str равна, например, test test2 то надо остановиться..
в общем вроде бы просто, но никак не лезет в голову, как на пхп это реализовать.
|
|
|

02.03.2007, 13:22
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Даю 150 рублей, тому кто подскажет реализацию.
Срочно надо.
|
|
|

02.03.2007, 13:30
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 60
Провел на форуме: 320906
Репутация:
63
|
|
PHP код:
$i=0;
foreach($bad_array as $v)
{
if($str==$v) {$i=1;foreach($allow_array as $v2) if($str==$v2) {$i=0;break;}}
}
if($i) exit;
Последний раз редактировалось Stefun; 02.03.2007 в 13:39..
|
|
|

02.03.2007, 13:31
|
|
Познающий
Регистрация: 19.11.2006
Сообщений: 60
Провел на форуме: 320906
Репутация:
63
|
|
вроде так
|
|
|

02.03.2007, 13:35
|
|
Познавший АНТИЧАТ
Регистрация: 02.05.2006
Сообщений: 1,191
Провел на форуме: 7364332
Репутация:
1276
|
|
Вот моя реализация этого алгоритма!
PHP код:
<?
$bad_array = array('bla', 'xyx', 'spider');
$good_array = array('123', '456', '789');
$allow_array = array( 'xaxa' => array('test', 'xyx', 'test3' , 'bla'),);
foreach ($allow_array as $index)
{
$result = str_replace($bad_array, $good_array, $index);
}
print_r ($result);
?>
|
|
|

02.03.2007, 14:05
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Вы не совсем поняли...
PHP код:
<?php
$bad1 = array('test', 'test2', 'test3');
$bad2 = array('xek1', 'xek2', 'xek3');
$allow = array(
'xaxa' => array('test', 'xek2'),
'xuxu' => array('test3')
);
$vars = array(
'mega' => 'traaaa',
'lol' => 'test3 count',
'xuxu' => 'lalal xek1' ,
'xaxa' => 'llolol test'
);
foreach($vars as $k=>$v){
foreach($bad1 as $b){
//тут то и нужна эта реализация
}
foreach($bad2 as $b){
//
}
}
?>
|
|
|

02.03.2007, 14:09
|
|
Умиротворенн
Регистрация: 09.12.2004
Сообщений: 996
Провел на форуме: 2386719
Репутация:
1384
|
|
Если я тебя правильно понял
PHP код:
<?
function check($string)
{
$bad_array = array('test', 'test2', 'test3');
$allow_array = array('test', 'test3');
$string = explode(" ",$string);
foreach ($string as $temp)
{
if (in_array($temp,$bad_array) and (!in_array($temp,$allow_array))) return false;
}
return true;
}
$string = "test test2";
if (check($string)) echo("ALL FINE"); else echo("FUCK");
?>
__________________
http://madnet.name - madnet - blog | homepage (Мысли, релизы, скрипты, софт)
http://antichat.ru - Лучший сайт по безопасности
irc.antichat.ru:7771 #antichat - общение online
ГАРАНТ ФОРУМА
|
|
|

02.03.2007, 14:25
|
|
наркоман с медалью
Регистрация: 07.05.2005
Сообщений: 3,704
Провел на форуме: 19975136
Репутация:
4536
|
|
Madnet, спасибо больше. Если нужно то, что во 2 посте, напиши в асику кошелек.
|
|
|

02.03.2007, 14:28
|
|
Умиротворенн
Регистрация: 09.12.2004
Сообщений: 996
Провел на форуме: 2386719
Репутация:
1384
|
|
Сообщение от Green_Bear
Madnet, спасибо больше. Если нужно то, что во 2 посте, напиши в асику кошелек.
не смеши, обращайся, если нужна помощь.
__________________
http://madnet.name - madnet - blog | homepage (Мысли, релизы, скрипты, софт)
http://antichat.ru - Лучший сайт по безопасности
irc.antichat.ru:7771 #antichat - общение online
ГАРАНТ ФОРУМА
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|