За последние 24 часа нас посетили 17403 программиста и 1726 роботов. Сейчас ищут 1602 программиста ...

Правильно ли я предохраняюсь? :)

Тема в разделе "PHP для новичков", создана пользователем SkyKiller, 31 окт 2008.

  1. SkyKiller

    SkyKiller Активный пользователь

    С нами с:
    1 ноя 2007
    Сообщения:
    166
    Симпатии:
    0
    Адрес:
    Новосибирск
    Я, конечно, не специалист, но (наверное) передав эту переменную в запрос.
    Либо в конструкцию вида
    Код (Text):
    1. $start=abs($page*SEARCHES_PER_PAGE);
    результат которой используется в запросе без проверки на целочисленность.
     
  2. Угу. Ну, передаст. И что?

    А ты 100% уверен, что переменная $page сможет иметь не-числовое значение?
     
  3. SkyKiller

    SkyKiller Активный пользователь

    С нами с:
    1 ноя 2007
    Сообщения:
    166
    Симпатии:
    0
    Адрес:
    Новосибирск
    Константа SEARCHES_PER_PAGE у меня равна 50.
    При несложном умножении получаем дробное число, которое идёт в запрос вместо целого.
    Проверять результат не стал, просто поправил код, дабы избежать возможных проблем.
     
  4. Да не надо его проверять. Можно головой думать. А не следовать бездумно мнению сканеров.
     
  5. SkyKiller

    SkyKiller Активный пользователь

    С нами с:
    1 ноя 2007
    Сообщения:
    166
    Симпатии:
    0
    Адрес:
    Новосибирск
    Спасибо! Обязательно учту в следующий раз, когда буду стараться написать безопасный код. :D
    А если "мнение сканера" помогло улучшить безопасность (по моему мнению) и прикрыть возможную"дырку" - почему бы его не учесть?
    Тем более, что это - всего лишь рекомендация, а не приказ к действию.