Перейти к содержимому


Поле Число


Сообщений в теме: 9

#1 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 04 Декабрь 2012 - 17:30

Парадоксальная ситуация. Есть поле типа число с 18 знаками. Ввожу значение. При сохранении оно меняется на свое. Изменяются последние три цифры. Причем присутствует непостижимая для меня логика. После продолжительного бодания, меняю четвертую с конца цифру - при сохранении поле изменяет последние три.
Проверил на вашей демо-базе - ситуация аналогичная. Возможно я превысил предел максимального числового значения? Или ученые такую цифру еще не придумали? Когда разрешите вопрос, ради интереса объясните, что за логика руководила полем. Я так и не отследил.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#2 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 04 Декабрь 2012 - 17:48

18 знаков после запятой что ли? Или до? Насчет ограничений лучше уточнить непосредственно в документации по MySQL (тип поля - decimal). Можете также проверить редактирование непосредственно в БД, например через phpMyAdmin. Вряд ли это проблема самой КБ, хотя все может быть.

#3 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 04 Декабрь 2012 - 19:52

Просмотр сообщенияCbCoder (04 Декабрь 2012 - 17:48) писал:

18 знаков после запятой что ли? Или до?
18 знаков до запятой. Число целое.

Просмотр сообщенияCbCoder (04 Декабрь 2012 - 17:48) писал:

Можете также проверить редактирование непосредственно в БД, например через phpMyAdmin. Вряд ли это проблема самой КБ, хотя все может быть.
При просмотре через phpmyadmin в ячейке содержится правильное значение, которое было введено при редактирование поля. А вот в КБ - свое собственное. Я не понимаю, как это возможно? А самое неприятное, что речь идет о личных счетах в банке!!! Вопрос. КУДА УЙДУТ ДЕНЬГИ? В нужном направлении или как? Чистая случайность, что это заметили. Еще более непонятно то, что некоторые комбинации цифр поле отражает корректно. Я в шоке от такой ситуации!!!

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#4 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 05 Декабрь 2012 - 10:15

Это сумма в деньгах или номер счета? Если номер счета - для таких целей надо использовать текстовые поля. Числовые поля - они для расчетов, а не для символьной информации. Редко кто в расчетах использует 18 знаков в числе, вполне возможно что происходят какие-то потери в числовых функциях. В любом случае проблему проверим.

#5 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 05 Декабрь 2012 - 10:45

Вот собственно и ответ: http://php.net/manua...types.float.php . Т.е. это ограничение чисел с плавающей запятой в PHP - как правило, 14 цифр максимум.

Используйте текстовый формат для таких целей, о чем я уже написал выше.

#6 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 05 Декабрь 2012 - 11:32

Просмотр сообщенияCbCoder (05 Декабрь 2012 - 10:15) писал:

Это сумма в деньгах или номер счета?
Это в евро... )

Просмотр сообщенияCbCoder (05 Декабрь 2012 - 10:45) писал:

Вот собственно и ответ: http://php.net/manua...types.float.php . Т.е. это ограничение чисел с плавающей запятой в PHP - как правило, 14 цифр максимум.
Почитал про mysql, там использование типа decimal(18,0) - это по сути текстовая переменная сейчас. Про ограничение php не подумал. Видимо мозги настолько блокировала шоковая ситуация, что думать отказались.

Просмотр сообщенияCbCoder (05 Декабрь 2012 - 10:45) писал:

Используйте текстовый формат для таких целей, о чем я уже написал выше.
Числовое поле было использовано, поскольку можно было задать длину (18 знаков), ограничить ввод только цифр и при сохранении число разделяется порядками, что наглядно. И все это не прибегая к помощи вычислений. Кто ж знал, что так получится. Наличие масок в 1.9.6 решит все эти вопросы. Но пока стоит предыдущая версия. Теперь, конечно, тип поля изменен.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#7 CbCoder

    Активный участник

  • Программист ООО "КБ"
  • PipPipPip
  • 8 762 сообщений
  • Пол:Мужчина
  • Город:Казань

Отправлено 05 Декабрь 2012 - 14:55

Цитата

Наличие масок в 1.9.6 решит все эти вопросы

Встроенные маски упростят задачу, но в принципе можно и сейчас сделать проверку через регулярки на javascript. И даже разделение на порядки ;)

#8 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 05 Декабрь 2012 - 17:46

Просмотр сообщенияandibrag (05 Декабрь 2012 - 11:32) писал:

И все это не прибегая к помощи вычислений.
Мысль была: Зачем делать, если можно не делать.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#9 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 05 Декабрь 2012 - 17:50

Просмотр сообщенияCbCoder (05 Декабрь 2012 - 14:55) писал:

Встроенные маски упростят задачу
У меня были подключены маски и все работало до какого-то момента. После очередного обновления перестало. Пытался выискать причину, но модули были заимствованы и перекроены. В итоге оставил без внимания, поскольку пообещали 1.9.6 с оными в штате.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения


#10 andibrag

    Прежде, чем задать вопрос, продумайте свое решение.

  • Активный пользователь
  • PipPipPip
  • 1 357 сообщений
  • Пол:Мужчина
  • Город:Санкт-Петербург

Отправлено 05 Декабрь 2012 - 17:50

Кстати по ним (по маскам) нет документации - ссылка не рабочая.

Творческая группа "ТАВР".

www.TAVR.pro Художественная ковка, металлоконструкции.

www.СтолМет.рф Складные столы, стулья и системы для их хранения






Количество пользователей, читающих эту тему: 6

0 пользователей, 6 гостей, 0 анонимных