Planning maken in een kalender

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mui ter

Mui ter

03/07/2010 21:52:40
Quote Anchor link
Mijn doel is het maken van een calender waar ik via gegevens uit mijn db werkzaamheden kan plannen.

De kalender werkt, de query ook. Hoe kan ik vanaf het moment dat de pagina wordt geopend de tijden doortellen en live de planning weergeven?

Verder als onderstaande kom ik helaas niet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?php
  $monthNames
= Array("januari", "februari", "maart", "april", "mei", "juni", "juli", "augustus", "september", "oktober", "november", "december");
  $dayNames = Array("zondag", "maandag", "dinsdag", "woensdag", "donderdag", "vrijdag", "zaterdag");
    if (!isset($_GET["month"])) $_GET["month"] = date("n");
    if (!isset($_GET["year"]))  $_GET["year"]  = date("Y");
    
  $cMonth = $_GET["month"];
  $cYear  = $_GET["year"];
                
  $prev_year = $cYear;
  $next_year = $cYear;

     $prev_month = $cMonth-1;
     $next_month = $cMonth+1;

     if ($prev_month == 0 )
     {

        $prev_month = 12;
        $prev_year = $cYear - 1;
    }

     if ($next_month == 13 )
     {

        $next_month = 1;
        $next_year = $cYear + 1;
    }

    
?>

   <div id="calendar_div" name="calendar_div">
    <table width="100%">
        <tr align="center">
          <td bgcolor="#999999" style="color:#FFFFFF">
                <table width="100%" border="0" cellspacing="0" cellpadding="0">
                    <tr>
                      <td width="33%" align="left">&nbsp;&nbsp;<a href="<?php echo $_SERVER["PHP_SELF"] . "?month=". $prev_month . "&year=" . $prev_year; ?>" style="color:#FFFFFF">Vorige</a></td>
                      <td width="34%" align="center" bgcolor="#999999" style="color:#FFFFFF"><strong><?php echo $monthNames[$cMonth-1].' '.$cYear; ?></strong></td>
                      <td width="33%" align="right"><a href="<?php echo $_SERVER["PHP_SELF"] . "?month=". $next_month . "&year=" . $next_year; ?>" style="color:#FFFFFF">Volgende</a>&nbsp;&nbsp;</td>
                    </tr>
              </table>
          </td>
        </tr>
        <tr>
            <td align="center">
              <table width="500" border="0" cellpadding="0" cellspacing="0">
                <tr align="left">

                <?php
                    $timestamp
= mktime(0,0,0,$cMonth,1,$cYear);
                    $maxday    = date("t",$timestamp);
                    $thismonth = getdate ($timestamp);
                    $startday  = $thismonth['wday'];
                    $day_no = 0;
                    
                    // query
                    $sql = "SELECT
                            id,
                            offerte_id,
                            cnc,
                            aantal,
                            dikte,
                            machine,
                            materiaal,
                            snij_tijd + extra_tijd AS tijd,
                            datum_gereed
                            FROM is_planning
                            ORDER BY datum_gereed ASC"
;    
                                
                    if(!$res = mysql_query($sql,$con))
                    {

                        trigger_error(mysql_error().'<br />In query: '.$sql);
                    }

                    while ($row = mysql_fetch_array($res))
                    {
                    }

                    
                    // tijden
                    $min_per_dag = 480;
                    
                    $min_start = 0;
                    $min_end = $min_per_dag;
                    
                  for ($i=0; $i<($maxday+$startday); $i++)
                  {

                    $today = $i - $startday + 1;
                    
                    $day = $dayNames[$day_no];
                    $day_no = $day_no + 1;
                    
                    // zet dagnummer weer terug op 0 bij nummer 8 (bestaat niet)
                    if($day_no == 7)
                    {

                        $day_no = 0;
                    }

                    
                    // geef geen weergave als de dag niet bestaat
                    if($i < $startday)
                    {

                        echo '<tr></tr>';
                    }

                    
                    // geef weergave
                    elseif($i > date("j"))
                    {

                        echo '<tr>
                                <td width="25">'
.$day.' '.$today. ' '.$monthNames[$cMonth-1].' '.$cYear.'</td>';
                                for ($min = $min_start; $min < $min_end; $min++)
                                    {

                                        echo '<td bgcolor="red">'.$min.'</td>';
                                    }

                        echo '</tr>';
                        // neem minuten stand mee naar de volgende dag
                        $min_start = $min_end;
                        $min_end = $min_start + $min_per_dag;
                    }
  
                    
                    // geef weergave dagen verstreken
                    else
                    {
                        echo '<tr>
                                <td width="25">'
.$day.' '.$today. ' '.$monthNames[$cMonth-1].' '.$cYear.'</td>
                                <td bgcolor="grey"></td>
                             </tr>'
;
                    }
                  }
  
                 ?>

                 </tr>
              </table>
            </td>
        </tr>
    </table>
</div>
 
PHP hulp

PHP hulp

21/11/2024 23:13:31
 
Mui ter

Mui ter

05/07/2010 22:59:55
Quote Anchor link
Iemand een idee?
 
Bas IJzelendoorn

Bas IJzelendoorn

05/07/2010 23:03:26
Quote Anchor link
Wat is precies de vraag?
 
Mui ter

Mui ter

06/07/2010 06:22:03
Quote Anchor link
Hoe kan ik vanaf het moment dat de pagina wordt geopend de tijden doortellen en live de planning weergeven in de kalender?
 
Joakim Broden

Joakim Broden

06/07/2010 08:04:03
Quote Anchor link
met de date(); functie kun je de huidige tijd/datum etc ophalen wat je weer kunt gebruiken in je query.
 
Mui ter

Mui ter

06/07/2010 11:00:10
Quote Anchor link
Ok, maar hoe ga ik dat grafisch weergeven in mijn kalender?
 
Justin S

Justin S

06/07/2010 11:27:01
Quote Anchor link
Ik denk dat de TS bedoelt dat hij door middel van knopjes < en > door de kalender kan "lopen".
 
Mui ter

Mui ter

06/07/2010 11:59:00
Quote Anchor link
Mijn idee is dat ik een kalender voor de komende 3 weken heb waarin grafisch een weergave is van de planning. Op een manier als wanneer de planning wordt geopend de kalender realtime wordt ingevuld aan de hand van de DB. De tijden (in minuten) die uit mijn DB koment moeten dan worden ingevuld, de volgende tijd is daarop weer aansluitend.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.