@Jony1337

Почему когда получяю значение через GET сравнение не работает?

Решил так проверять не пытаются ли мне сделать SQL injection
$symbol = '123456789';
$user_pass = $_GET ['id'];
     if( strlen($user_pass) == strspn($user_pass,$symbol)){
    // продолжаем работу
     }
	 else {
		 // выводит ошибку 

	 }

так код не работает но если присвоити в коде значение допустим $user_pass = "44242"; то все сработает без проблем , почему когда значение приходит из GET ничего не работает ?
  • Вопрос задан
  • 163 просмотра
Решения вопроса 1
DmitriyEntelis
@DmitriyEntelis
Думаю за деньги
Я что то не пойму - что Вы вообще пытаетесь сделать и зачем.
При чем тут sql injection? Пытаетесь проверить что GET['id'] числовой?
Для этого
а) есть замечательная функция is_numeric
b) любые параметры при передаче в sql нужно явно экранировать и/или приводить к integer.

PS а не работает потому что у Вас написано user_passs в одном месте и user_pass в другом
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы