13. maj 2009 - 09:50
Der er
13 kommentarer
Kalender hjælp
Hejsa, jeg ønsker lidt hjælp til at komme i gang med et kalender script/booking script. Jeg har i forevejen lavet kalenderen og hetning af data, men men.. Hvordan opstiller jeg et skema der (ud fra php) kan lave f.eks: 10.30-11.00 ???? 11.00-11.30 ???? 11.30-12.00 ???? Jeg har forsøgt mig lidt. Men gider ikke gøre det manualt, da administratoren skal kunne ændre "mellemrums" minutterne ved hvert (som i mit eksempel er 30 minutter). På forhånd tak.
Annonceindlæg fra Novataris
Vejen til devops med Bavarian Nordic
Bavarian Nordics vækst blev starten på et DevOps-samarbejde med Novataris for hurtigt at kunne tilpasse IT-organisation til forretningen.
7. december 2023
Man skal også kunne vælge start og slut tidspunkt, så man kan sige, dagen starter fra kl. 10.00 til 17.00, hvor den så regner: 10.00-10.30 10.30-11.00 .... .... .... 15.30-16.00 16.00-16.30 ....
<?php for ( $i=10;$i<=17;$i++) { if ( $i==17) { echo $i . ".00-" . $i . ".00<br>"; } else { echo $i . ".00-" . $i . ".30<br>"; } } ?> Rigtig ringe løsning
LAver jeg f.eks denne, kan jeg jo ikke sætte den til 3 timer i mellem tidspunkterne jo :'( Hvad gør jeg? <?php $startTidspunkt = 10; //10 om morgenen $slutTidspunkt = 17; //17 om aftenen $mellemrum = 50; //30 minutter. for ( $i=$startTidspunkt;$i<=$slutTidspunkt;$i++){ if ( $i==17){ echo $i . ".00-" . $i . ".00<br />"; } else { echo $i . ".00-" . $i . "." . $mellemrum . "<br />"; } } ?>
Brug unixtime, gør det nemmere at fast sætte datoer og tidspunkter...
Ja, det var jo ikke meget hjælp :) Ingen der kan opbygge et eksempel på at fremvise disse tidspunkter
Måske dette kan hjælpe dig videre: ? <?php //PÅ EN TIME ER DER 3600 SEKUNDER //TIDEN PÅ START DAGEN $TidDag = mktime(0, 0, 0, date("m") , date("d"), date("Y")); //TIDEN NU $TidNu = time(); //ANTAL TIDER DER BØR VÆRE PÅ EN DAG $AntalTider = 1; // ANTAL TIDER //START $StartTid = 10*3600; // KL. 10 * 3600 SEKUNDER //SLUT $SlutTid = 17*3600; // KL. 17 * 3600 SEKUNDER $TidMellem = $SlutTid-$StartTid; $Mellem = floor($TidMellem/$AntalTider); $x = 1; $TidDag += $StartTid; while($x <= $AntalTider){ echo date("H:i", $TidDag)."-"; $TidDag += $Mellem; echo date("H:i", $TidDag)."<br>"; $x++; } ?>
10:00-10:42 10:42-11:24 11:24-12:06 12:06-12:48 12:48-13:30 13:30-14:12 14:12-14:54 14:54-15:36 15:36-16:18 16:18-17:00 Næsten rigtigt ! :-) Jeg skal kunne sætte mellemrummet i mellem intervallerne, sådan det bliver: 10:00 -10:30 10:30-11:00 11:00:11:30 <?php $TidDag = mktime(0, 0, 0, date("m") , date("d"), date("Y")); $TidNu = time(); $AntalTider = 10; $StartTid = 10*3600; // KL. 10 * 3600 SEKUNDER $SlutTid = 17*3600; // KL. 17 * 3600 SEKUNDER $TidMellem = $SlutTid-$StartTid; $Mellem = floor($TidMellem/$AntalTider); $x = 1; $TidDag += $StartTid; while($x <= $AntalTider) { echo date("H:i", $TidDag)."-"; $TidDag += $Mellem; echo date("H:i", $TidDag)."<br>"; $x++; } ?>
Det er jeg ikke med på.., forklar forklar...
Ligenu outputter den forkert intervaller som du kan se her, bliver klokkeslættet ikke korrekt. 10:00-10:42 10:42-11:24 11:24-12:06 .... Mellem 10.00 og 10.42 er der 42 minutter? Det skal være et interval på 60 minutter (evt. lav en variable i php, så jeg selv kan sætte intervallet). Ellers næsten rigtigt, håber du kan hjælpe med det
Jeg har ikke lige været på den seneste tid..., hvad så hvis intervallet ikke går op ?
Men er det ikke bare $AntalTider du skal sætte til noget andet end 10 ??
Eller du kunne sætte $Mellem til 1800 = ½ time..
Vi tilbyder markedets bedste kurser inden for webudvikling