Очистить ввод с помощью FILTER_SANITIZE_STRING

Я схожу с ума от написания некоторого кода для очистки данных, поступающих из формы. В форме у меня есть поле ввода с именем "sender_countryCode", которое может содержать только 2 или 3 текстовых символа, таких как USA, FR, EN, ... следующий код должен блокировать все, что отличается от строки, но если я напишу "мой текст" в поле ничего не проходит фильтр!

if  (isset($_POST["sender_countryCode"])){
    $var    =   $_POST["sender_countryCode"];
    $var    =   stripslashes($var);
    $var    =   htmlentities($var);
    $var    =   strip_tags($var);
    $var    =   filter_var($var, FILTER_SANITIZE_STRING);
    $sender["countryCode"] = $var;
    unset($var);
};

1 ответ

Решение

Это работает:) ... извините, я немного опоздал, но я видел, что это не было ответа. Вот мое решение.

function maxLengthCheckUp($this) {
    if ( strlen($this) <= 4){
        return TRUE;
    }
}
if (isset($_POST["sender_countryCode"]) 
  && !preg_match('/\s/',$_POST["sender_countryCode"]) 
  && maxLengthCheckUp($_POST["sender_countryCode"])) {
    $var    =   $_POST["sender_countryCode"];
    $var    =   stripslashes($var);
    $var    =   htmlentities($var);
    $var    =   strip_tags($var);
    $var    =   filter_var($var, FILTER_SANITIZE_STRING);
    $sender["countryCode"] = $var;
    echo $sender["countryCode"];
    unset($var, $sender);
};//end of if(...

СОЗДАЙТЕ СВОЮ ФОРМУ С СЛЕДУЮЩИМИ ЭЛЕМЕНТАМИ:

<input type="text" name="sender_countryCode" id="sender_countryCode" />
<input type="submit" name="Submit" id="Submit" value="Submit" />

отправить свою форму... создание нормальной формы.... просто используйте мой PHP-код выше. Попробуйте это:)

Другие вопросы по тегам