PHP MySQL insert in float (3,1) всегда получает "0" как десятичную

80
11

Я хочу вставить это значение в столбец FLOAT (3,1) в моей базе данных:

$sec['votos_rating'] = 5 + ($sec['votos_pos'] * (5 / $sec['votos_total'])) - ($sec['votos_neg'] * (5 / $sec['votos_total']));

Но я всегда получаю 1.0, 2.0, 3.0 и т.д....

Вы знаете, что я могу делать неправильно?

Это была проблема:

    $db->addInteger('votos_rating', $sec['votos_rating']);

Я должен был использовать addFloat вместо...;)

спросил(а) 2021-01-19T19:49:12+03:00 9 месяцев назад
1
Решение
79

Используйте addFloat($val) для достижения желаемого поведения.

ответил(а) 2021-01-19T19:49:12+03:00 9 месяцев назад
79

Может быть, вы используете $db-> addInteger?

ответил(а) 2021-01-19T19:49:12+03:00 9 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема