08. juni 2002 - 12:28Der er
13 kommentarer og 1 løsning
Bookingsystem
Først og fremmest: Jeg arbejder med PHP og MySQL. Jeg vil gerne lave et bookingsystem, og som jeg lige kan se det, er det nemmeste, at lave en tabel med dage. F.eks. indeholdende alle dagene i 2002. Dagene skal så indeholde informationer om hvilken uge det er i...
Men kan man på en eller anden måde autogenerere sådan en tabel med dage i? Så den eks. automatisk laver for 1 år frem? Og også skriver for hver dag hvilken uge det er?
Hvis det kan laves, kan man jo klikke på en uge (nr.) og dernæst en ugedag og se hvilket der er ledigt...
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hmm.. Du vil ikke prøve at give et kode eksempel? Jeg kan godt se, at det er muligt at finde dage i given måneder osv, men hvordan omsætter jeg dette og putter hver eneste dag i en database? Som tilmed husker uge-nummeret?
Det her viser et kalenderår med måneder, datoer, ugenumre og dagnavn. Det multidimensionelle array $ASSIGNMENT fylder du fra din database med aftaler (jeg har kun lavet tre aftaler i hånden).
Formular til at gemme i databasen er triviel, en dato og gem. Selecten er triviel, nu har du outputformatet.
# Assignment is multiarray, easy to fetch from db, build year, month, day as threedimensional $ASSIGNMENT[2002][6][10][] = "Lars, du skal ud og rejse"; $ASSIGNMENT[2002][6][10][] = "Husk at pakke *g*"; $ASSIGNMENT[2002][11][5][] = "Wow, endnu et år ældre";
# Init months array with days and first day of month $MONTHS = array(); for ($i=1;$i<=12;$i++) { # Initialize days in month $MONTHS[$i]["days"] = date_info("t", $i, $year); $MONTHS[$i]["firstday"] = date_info("w", $i, $year); $MONTHS[$i]["weekno"] = date_info("W", $i, $year); if ($MONTHS[$i]["firstday"] == 0) $MONTHS[$i]["firstday"] == 7; $MONTHS[$i]["firstday"]--; }
# Show calendar for ($i=1;$i<=12;$i++) { # One loop for every month, every month in seperate table # Set weeknumber $week = $MONTHS[$i]["weekno"]; ?> <table width="350" border="1" cellspacing="2" cellpadding="2" align="center"> <tr> <td colspan="2"><b><?php echo $MONTHNAME[$i-1]; ?></b></td> </tr>
<?php # Loop through each day in month for ($j=1;$j<=$MONTHS[$i]["days"];$j++) { # Fix week number if (($MONTHS[$i]["firstday"]+$j)%7 == 0) $week++;
oKay, ser meget godt ud! Men jeg forstår ikke den måde den udskriver nummer på uger på... Den skriver: 8. [ Onsdag ][ uge : X]
Og som du selv skriver laver man vel bare en database og putter informationerne ind i nedenstående med select, ik? $ASSIGNMENT[_data_][_data_][_data_][] = "_data_";
først, sorry, jeg har ikke set din kommentar - jeg er på ferie :))
Vedr. ugenumre, prøv at fjerne # fra min DEBUG information. For hver uge beregner jeg ugenummeret for en dato. I PHP's date kommando findes parametren W der udfra en given dato returnerer ugenummeret.
Selve "bookingerne" angives som mit eksempel $ASSIGNMENT[2002][11][5][] = "Wow, endnu et år ældre";
[2002] = år [11] = måned [5] = dato [] = ny post ([] vil skabe en ny post i et array - der kan være flere aftaler på én dato)
cool nok med det andet, så laver jeg bare nogle tabeller i Mysql der passer til det du skrev: [2002] = år [11] = måned [5] = dato [] = ny post ([] vil skabe en ny post i et array - der kan være flere aftaler på én dato)
Hey, ljweb.. jeg har et problem med scriptet du lavede! Har prøvet at sende dig en mail, men har ikke hørt fra dig... Har du fået ny mail-adresse?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.