Я пытался и поиска рабочего раствора, но ничего не помогало ..PHP функция для удаления всех недопустимых символов
Я делаю социальный веб-сайт, где пользователи могут оставлять. Я хотел бы проверить текст, прежде чем он войдет в базу данных.
Я хотел бы сделать обычные символы включены (A-Za-Z0-9) + некоторые utf8 символы (áÁéÉíÍóÓöÖőŐúÚüÜűŰ) и некоторые другие символы (,;.?!. И т.д.)
Я но он, похоже, не работает:
preg_replace('/[^a-zA-Z0-9áÁéÉíÍóÓöÖőŐúÚüÜűŰ \.\,\?\!\:\;\-\+\<\>\%\~\€\$\[\]\{\}\@\&\#\*\"\„\”\/]/', '', $string);
Может ли кто-нибудь помочь мне?
Есть ли что-нибудь проще? Причина, по которой я делаю это, - это то, что я не хочу, чтобы пользователи спамевали базу данных с незаконными символами или HTML-тегами. Было бы так плохо, если бы кто-то написал сообщение вроде этого "blabla</div>".
Что такое * "незаконный характер" *? И почему бы просто не использовать utf-8, а применить 'strip_tags()'? – CD001
Может быть, Duplicate? - http://stackoverflow.com/questions/1401317/remove-non-utf8-characters-from-string –
Вы говорите, что не хотите, чтобы пользователи отправляли HTML-теги, но все символы, необходимые для их написания, перечисленные в вашем регулярном выражении. – iainn