PHP - Osztás 1. maradéka.
Hello. A következő gondom akadt PHP-ban.
Egy kutyaneveldét készítek. (Eddig sikerrel)
Szeretnék hozzádobni, egy kor mérőt, hogy a kutya hány éves.
Az adatbázisban 1 mezőben (INIT) tárolja, a napok számát amióta megvan a kutya. Ez automatikuson naponként nő 1-el.
Kiolvasom az adatbázisból.
Elkezdek vele dolgozni.
Eddig erre jutottam.A $kor változó adja meg a kutya korát amit kinyer MySql-ből.
Ha 7 nap alatt van akkor kiírja, simán h ennyi napos.
De ha 7 nap fölött van, akkor szeretném, hogy kiszámolja, hogy hány hét és úgy átalakítsa. Ha A szám maradéktalanul osztható 7-el semmi gond. De ha már nem akkor gond van.
Ebben kérném segítségeteket.
Mégegyszer az a kódrészlet:Üdvözlettel: T-bond
■ Egy kutyaneveldét készítek. (Eddig sikerrel)
Szeretnék hozzádobni, egy kor mérőt, hogy a kutya hány éves.
Az adatbázisban 1 mezőben (INIT) tárolja, a napok számát amióta megvan a kutya. Ez automatikuson naponként nő 1-el.
Kiolvasom az adatbázisból.
Elkezdek vele dolgozni.
Eddig erre jutottam.
//Változók létrehozása
$korev = ""; $korevv = "";
$korhonap = ""; $korhonapv = "";
$korhet = ""; $korhetv = "";
$kornap = ""; $kornapv = "";
//matekolunk
if($kor < 7){ $kornap = $kor; $kornapv = " napos";}
if($kor >= 7){if(($kor%7)/7 == 0){$korhet = $kor/7; $korhetv = " hetes ";}else{$korhet = intval($kor/7); $korhetv = " hetes és "; $kornap = substr(($kor%7)/7,2,1); $kornapv = " napos.";} }
//Megjelenítem
print "Kora: ".$korev."".$korevv."".$korhonap."".$korhonapv."".$korhet."".$korhetv."".$kornap."".$kornapv;
Ha 7 nap alatt van akkor kiírja, simán h ennyi napos.
De ha 7 nap fölött van, akkor szeretném, hogy kiszámolja, hogy hány hét és úgy átalakítsa. Ha A szám maradéktalanul osztható 7-el semmi gond. De ha már nem akkor gond van.
Ebben kérném segítségeteket.
Mégegyszer az a kódrészlet:
$korhet = intval($kor/7); $korhetv = " hetes és "; $kornap = substr(($kor%7)/7,2,1); $kornapv = " napos.";}
Átmenet
Kicsit formázd meg a kódot,
Én így csinálnám:
A fenti kimenete: A kutya 6 hetes, 1 napos.
Valami ilyesmi? <?php $kor =
Vannak problémáim azzal, amit leírtál
Van a kutyának egy születési dátuma. Nem lenne egyszerűbb ezt tárolni az adatbázisban és minden lekérdezéskor újra kiszámolni, hogy hány napos?
Kicsit macerás nap, mint nap frissíteni a napok számát.
Hogy mennyi idős? Kb. így számolnám ki:
$hetek=int($ossznapok/7);
$napok=$ossznapok%7;
echo $hetek!=0?"$hetek hetes és $napok napos":"$napok napos";
(az int-ben nem vagyok biztos, az a függvény kell, ami lecsapja a tizedest, nem kerekít)
fmod()
fmod()
nevű függvény, ami megnézi nekünk az osztás maradékát.(A hónapot és az évet osztogatós módszerrel semmiképp sem számolnám, mert bármely két egymást követő hónapot nézve már borul a 30 nap.)