Gå til innhold

Hjelp til script som regner ut pris basert på forskjellige dagspriser


Anbefalte innlegg

Hei.

Holder på med et script som skal regne ut priser på leie, hvor hver dag har forskjellig pris.

 

I tabellen ordrer har jeg to felt som er viktige, startdato og sluttdato.

I tabellen objekter har jeg 7 felt, mandag tom søndag som hver inneholder forskjellig pris.

Ønsker å få til et script som da finner de eksakte dagene og regner ut prisen totalt for hele perioden.

 

blir jo å finne ut hvor mange dager som er mandag, tirsdag, etc og kalkulere det med prisen som ligger i objekt-databasen med hver dag som navn.

 

Antall mandager mellom dato1 og dato2: X * pris_mandag

Antall tirsdager mellom dato1 og dato2: X * pris_tirsdag

etc...

 

datediff på startdato og sluttdato kan være alt fra få dager til flere uker.

Noen som har tips til hvordan jeg finner hver dag og får regnet ut en totalsum basert på eksakte dager * pris?

 

Setter pris på all tilbakemelding, har søkt meg ihjel uten å finne noe som kan hjelpe meg.

Lenke til kommentar
Videoannonse
Annonse

For å gi deg et enkelt, men forhåpentligvis nyttig svar, kan du jo gjøre følgende;

 

Last inn alle dager/ priser for valgt objekt i et array, hvor startdato er første element.

Finn ut hva som er startdag og sluttdag, samt hvor mange dager/ døgn dette dreier seg om.

Benytt deretter en løkke (med en ekstra løkke inni) som kjøres det antall ganger dager det er snakk om, og plusser på nøkkel 1-7 for hver gang løkken kjøres.

Du kan deretter be om å få returnert prisen. :!:

Lenke til kommentar

Hvis det bare er dato og ikke tidspunkt, kan du finne ut sekunder mellom dag1 og dag 2 med mktime eller strtotime., deretter konvertere dette til døgn.

Deretter tar du enkelt døgn / 7 og det er antall dager for alle og døgn % 7 som er ekstra dager for dag 1, etc.

Deretter matcher du dette mot dag1 sin dag i uken (onsdag fx) og går fra der.

Endret av OISNOT
Lenke til kommentar
  • 2 uker senere...

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...