За последние 24 часа нас посетили 16978 программистов и 1297 роботов. Сейчас ищут 1440 программистов ...

Принимаемые числовые данные

Тема в разделе "PHP и базы данных", создана пользователем Redya69, 5 янв 2015.

  1. Redya69

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

    С нами с:
    30 янв 2013
    Сообщения:
    39
    Симпатии:
    0
    заметил такую неприятность
    в принимаемых данных если параметр должен быть int и его надо использовать в запросе, то всегда не парясь подставляю к нему (int)
    однако...в sql int это всегда от –2 147 483 648 до 2 147 483 648
    в php если сервер 32 бита, то так же...а вот если 64 бита, то от -9 223 372 036 854 775 808 до 9 223 372 036 854 775 807
    а если еще произвести какие-то вычисления с этим числом, то получается вот такой вот вид 1,0E+19 и это уже гарантированно ошибка
    а если кто-то все параметры в запросе обрамляет кавычками, то вот это дело '1,0E+19' SQL поймёт как 1, а это уже может быть дыркой

    запаривался кто над подобным?
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    можно в двойную точность кастовать