В форму вводятся данные: день, месяц, год и день месяц год партнера. Далее проверяем что введено, для обоих получаем общее число например 36. Число записей в базе 9 штук. Каким то волшебным образом надо полученное общее число 36 привести к числу записей равному от 1 до 9. Все перепробовала, работает через раз, то выводит, то не выводит, голову сломала. Я не программист, я любитель, не совсем чайник, но и не кофейник. Код (Text): $sum=56; $total=9; if ($sum<=$total){ echo $sum; } else if ($sum>$total){ while (1) { $sum -= $total; if ( $sum > 0 && $sum < 9 ) { break; } } $sum = sprintf($sum); echo $sum; }
Полученное число в результате вычитания одного из другого должно быть равным от 1 до 9 по количеству полей в базе (9). Т.е. вычесть 1 раз одно из другого не помогает, нужен цикл который будет вычитать до момента от 1 до 9. Написанный мной цикл то работает, то не работает и я не понимаю в чем дело. --- Добавлено --- Код (Text): $vs=gmp_sub("$sum", "$total"); Вычитает одно из другого один раз. Я уже весь инет перелопатила ничего не нашла.
Всем спасибо, проблема решена, т.к. записей 9, а $sum <9 (считай 8), соответственно ничего и не выводилось.
PHP: <?php $sum=56; $total=9; ?> Правильно ли я понимаю? То есть нужно вычитать из $sum $total раз? А что именно?
Можете циклом проверять, а можете воспользоваться рекурсией. Я думаю так будет лучше. Просто проверяйте если ещё можно вычитать то запускайте рекурсию, ели уже вычитать нельзя то соответственно наоборот