Различные вопросы по PHP и MySQL

102K
.
# ДоХтор (01.09.2016 / 14:58)
Нет, надо хотя бы так function antirek($str) {
$pattern = [
'~sayt\.ru~iu',
'~sayt\.uz~iu'
];

return preg_replace($pattern, '', $str);
}
так сделал ну теперь проблема на проверки

$text = isset($_POST['text']) ? trim($_POST['text']) : '';
$foo = functions::antirek($text);
if (!empty($foo)) { 
$error[] = 'BAN';
}


вроде не правильна делаю проверку
.
# Udesign (01.09.2016 / 15:07)
так сделал ну теперь проблема на проверки

$text = isset($_POST['text']) ? trim($_POST['text']) : '';
$foo = functions::antirek($text);
if (!empty($foo)) {
$error[] = 'BAN';
}

вроде не прав
Весь код напечатай, который ты сделал.
.
ДоХтор, в functions.php

function antirek($str) {
    $pattern = [
        '~sayt\.ru~iu',
        '~sayt\.uz~iu'
    ];
 
    return preg_replace($pattern, '', $str);
}


а где надо проверить добавил

$text = isset($_POST['text']) ? trim($_POST['text']) : '';
$foo2 = functions::antirek($text);
 
if (!empty($foo2)) { 
$error[] = 'BAN';
}


форма те же
.
В functions.php надо писать так
public static function antirek($str) {
    $pattern = [
        '~sayt\.ru~iu',
        '~sayt\.uz~iu'
    ];

    return preg_replace($pattern, '', $str);
}
.
Udesign, А вот проверка на пустоту тут уже не подходит. Например, если юзер напишет не только ссылку, но и какой-то текст сообщения, то на выходе antirek() у тебя будет НЕ пустая строка, НО без адреса, а просто текст.
.
ДоХтор, да empty() проверяет если толка напишу sayt.ru а если напишу sayt.ru блабла не проверяет
.
# Udesign (01.09.2016 / 15:25)
ДоХтор, да empty() проверяет если толка напишу sayt.ru а если напишу sayt.ru блабла не проверяет
Тебе надо организовать поиск подстрок без их замены в тексте. Сейчас напишу пример.
.
Udesign, примерно так (можно это и в тело функции прописать)
if (preg_match('~sayt\.(ru|uz)~iu', $_POST['text'])) {
    echo 'БАН';
}
.
# ДоХтор (01.09.2016 / 15:35)
Udesign, примерно так (можно это и в тело функции прописать) if (preg_match('~sayt\.(ru|uz)~iu', $_POST['text'])) {
echo 'БАН';
}
ну здесь толка один сайт провертеться надо как то сделать что бы проверял несколка сайтов
.
# Udesign (01.09.2016 / 17:29)
ну здесь толка один сайт провертеться надо как то сделать что бы проверял несколка сайтов
Нет, тут два сайта проверится. А чтобы больше проверял, надо писать нормальный шаблон в регулярке (я об этом вначале говорил).
Всего: 7969