Hallo,
Ik zit met een probleem met PHP.
Situatie
Ik heb een systeem met producten en geef daar bij aan:
- Datum dat het product in gebruik is genomen (UNIX_TIMESTAMP)
- Om de hoeveel maanden een factuur moet worden verstuurd (bijv 3, 6 of 12)
Wat wil ik?
Uitrekenen wanneer de volgende factuur moet komen.
$array is een resultaat uit de MySQL database, evenals $row, het komt alleen uit andere tabellen.
Wat heb ik aan code
Nu weet ik, een maand is niet altijd 30 dagen (365/12 = 30.41)
De ene maand is 31 dagen en de andere 30 dagen, óf zelfs maar 28 dagen.
Ik heb een product wat in gebruik is genomen op 01-01-2004, zet ik facturatie_periode op 12, kom ik uit op 25-12-2004
Klopt dus perfect. die 6 dagen die ik mis komen doordat de ene maand 31 dagen heeft en de ander 30.
Zet ik de facturatie periode op 3 maanden, krijgt ik 30-03-2004.
Dat moet dus 01-10-2004 zijn.
Nu moet je zoiets kunnen opvangen met een if/else constructie.
Wat is nu mijn probleem?
Hoe vang ik de maanden op die 31 dagen hebben of zelfs maar 28/29 dagen?
Hoe vang ik het probleem op als de periode staat op 3 of 6 maanden?
Ik zit met een probleem met PHP.
Situatie
Ik heb een systeem met producten en geef daar bij aan:
- Datum dat het product in gebruik is genomen (UNIX_TIMESTAMP)
- Om de hoeveel maanden een factuur moet worden verstuurd (bijv 3, 6 of 12)
Wat wil ik?
Uitrekenen wanneer de volgende factuur moet komen.
$array is een resultaat uit de MySQL database, evenals $row, het komt alleen uit andere tabellen.
Wat heb ik aan code
code:
1
2
3
| $timestamp = 3600 * 24 * 30 * $row["facturatie_periode"]; $diff = time() - $array["date_added"]; $nextfactuur = $timestamp - $diff + time(); |
Nu weet ik, een maand is niet altijd 30 dagen (365/12 = 30.41)
De ene maand is 31 dagen en de andere 30 dagen, óf zelfs maar 28 dagen.
Ik heb een product wat in gebruik is genomen op 01-01-2004, zet ik facturatie_periode op 12, kom ik uit op 25-12-2004
Zet ik de facturatie periode op 3 maanden, krijgt ik 30-03-2004.
Dat moet dus 01-10-2004 zijn.
Nu moet je zoiets kunnen opvangen met een if/else constructie.
Wat is nu mijn probleem?
Hoe vang ik de maanden op die 31 dagen hebben of zelfs maar 28/29 dagen?
Hoe vang ik het probleem op als de periode staat op 3 of 6 maanden?