aaadddminnn
@aaadddminnn
php it ubuntu debian

Почему первое условие пишет бред в бд?

////щитаем хп

    if ($skill_user['flag'] === '1') {
        $mnog = $skill['skill_hp'] * 10; //узнаём макс хп
        $healt_max = $mnog * 1.25;       //даём бонус первому флагу
    } else {
        $healt_max = $skill['skill_hp'] * 10; //узнаём макс хп
    }


    if ($skill['now_hp'] != $healt_max) { //если макс хп и текущие хп ровны то дальше что либо щитать смысла нет
        $remove = $tim - $skill['time_hp']; // узнаём сколько времени прошло после траты хп
        $removing = $remove / 90;           //делим время на 90. 
        //отбросим всё что после точки. 
        //В итоге имеем либо 0 (времени мало прошло для востановления) 
        //либо на сколько ступенек востановить
        $removing = explode('.', $removing);
        //узнаём сколько хп добавить
        $remove = $removing[0] * 10;
        //узнаём на сколько обновить время89
        $time_hp = $remove * 90;

        //смотрим не больше ли remove максимально допустимых параметров
        //если больше то в бд пишем макс параметры
        if ($remove <= $healt_max) {
            //отлавливаем ошибки роботы с бд
           //это запрос запишет в бд числа вроде -65676577
         //почему?
            if ($mysqli->query("UPDATE `attainments` SET `time_hp` = `time_hp` + '$time_hp',"
                            . "`now_hp` = `now_hp` + '$remove'  "
                            . "WHERE `id` = '$id'")) {
                echo'1';
            } else {
                echo 'ошибка UPDATE при обновлении хп';
            }
        } else {
            //отлавливаем ошибки роботы с бд
            if ($mysqli->query("UPDATE `attainments` SET "
                            . "`time_hp` = `time_hp` + $time_hp,"
                            . "`now_hp` = '$healt_max'  "
                            . "WHERE `id` = $id")) {
                echo'2';
            } else {
                echo 'ошибка UPDATE2 при обновлении хп';
            }
        }
    }

Привет. В скрипте я закоментировал ошибку. Почему то место добавления оно отнимает. Зарание спасибо
  • Вопрос задан
  • 183 просмотра
Пригласить эксперта
Ответы на вопрос 2
Плохо щитается
Ответ написан
evgeniy2194
@evgeniy2194
PHP, js developer
Что у вас хранится в $time_hp перед записью?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы