Я хочу разрешить только [^[email protected]_.0-9\']
для принятия функции furthur, поэтому я сделал это. Он работает нормально, но когда я попытался запустить вставку anything.php
Получение ошибки при санировании Get
Он начал искать имя файла и заканчивается ошибкой. Я уже избегаю нежелательного символа, но все же он дает ошибку!
Я не могу бежать точка (.), Так как многие пользователи используют его
$clean = htmlspecialchars(escapeshellcmd(($_GET["name"]),ENT_QUOTES);
if (!preg_match('/[^[email protected]_.0-9\']/', $clean))
{
if(empty($clean)){
echo "";
}else{
//function
}
}
FYI: вы можете использовать '\ w', чтобы сократить это на' [\ w^@. '] '. Также почти невозможно сказать, что вы просите. Вы получаете ошибку, или это просто позволяет передавать строки, которые вы * думаете *, должны быть пойманы вашей проверкой? – meagar
Lol невозможно? Извините за мой язык. bro Я хочу, чтобы кто-нибудь вставлял значение. сервер должен разрешить, если строковое значение состоит только из значения A-Z _. @ 9-0, если нет, тогда дайте ошибку, идите дальше к запросу – user2540127
. Тогда ваше регулярное выражение неверно, см. мой ответ ниже. – meagar