Loading...
PHP/MySQL | Division by zero in охх
Пишу игруху с 0...
Сейчас прописываю класс на статус хп, мп екс и прочее..
Столкнулся с тем что интерпретатор выдает, что делить на 0 нельзя...
Пробивал return и не хера...
Либо я туплю от двух дней бессонных либо хз ваще..
Как можно решить ? дополнительные ifы юзать не хочу, хочу узнать можно ли как то решить по другому..
class Status {

public static function exp($id) {

$exp_progress = round(100/($exp/$id));
if($exp_progress > 100)
{
$exp_progress = 100;
}
}
}
Скорее всего одна из переменных имеет значение 0, и именно поэтому возникает Division by zero.
Попробуй проверить области видимости и покажи вывод print_r обоих переменных.
________
посл. ред. 21.11.2016 в 18:57; всего 1 раз(а); by monobogdan
monobogdan (21.11.2016 в 18:57)
Скорее всего одна из переменных имеет значение 0, и именно поэтому возникает Division by zero.
Попробуй проверить области видимости и покажи вывод print_r обоих переменных.

Нуу вообще то значение 0 в функциях и прочем это нормальность, интерпрет.. ругаться на это никогда не будет..
Тут дело в делении на 0 , и деление происходит $exp_progress = round(100/($exp/$id));
Мне нужно узнать есть ли другие решения кроме того чтоб не использовать if
Trec80, $exp чему равна?
386211425, 60 только к чему вопрос?)
________
посл. ред. 21.11.2016 в 19:15; всего 1 раз(а); by Trec80
Trec80, попробуй abs
monobogdan (21.11.2016 в 19:16)
Trec80, попробуй abs

не прокатит, деление все равно будет на 0)
Trec80, где ты её обьявляешь? Функция вобще её видит? Так же и $exp_progress
386211425 (21.11.2016 в 19:20)
Trec80, где ты её обьявляешь? Функция вобще её видит? Так же и $exp_progress

раз мне выдал интерпретатор ошибку, значит все работает!
Потому что по умолчанию в базе у меня стоит 0) даю больше 0 все норм!
________
посл. ред. 21.11.2016 в 19:22; всего 1 раз(а); by Trec80
Ладно, замбомбил
if($ank[exp] != 0)
$exp_progress = round(100/($exp/$ank['exp']));
else
$exp_progress ='0';

потом избавлюсь от этих костылей
Онлайн: 3
Время:
Gen. 0.1175
(c) Bym.Guru 2010-2025