Suche Script zur Raum-/Tischreservierung

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • #16
    PHP-Code:
    $monat=date('n');
    $monate=array(31,28,31,30,31,30,31,31,30,31,30,31);
    $tage=$monate[$monat];
    if (
    $monat==2)
    {
        
    $datum=mktime(0,0,0,$monat,29,date('Y'));
        if (
    strftime('%m',$datum))==3)
            
    $tage++;

    verstanden?

    wenn der februar nicht mal 28 und mal 29 tage hätte, könntest du nach den ersten 3 zeilen schon aufhören
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #17
      ne ne,

      der ansatz mit date "t" ist schon korrekt. da du im beispiel immer nur vom derzeitigen server datum ausgehst hier die lösung für die aktuellen tage:

      PHP-Code:
      $days date("t",time()); 
      bei beliebigen datum bruachst du immer monat und jahr. ob du es mit strtotime oder mktime zusammenbaust ist rel. egal

      PHP-Code:
      $days date("t",mktime(0,0,0$monat1$jahr));
      $days date("t",strtotime("2003-02-21")); // Tag spielt hier keine Rolle 
      ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
      und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

      Kommentar


      • #18
        so das hab ich jetzt geschafft (das mir der computer sagt, wieviel tag ein monat hat)....
        anderes problem:
        folgendes design:


        dieser code (sehr primitiv und würde nur klappen, wenn der erste tag im monat ein montag wäre):
        PHP-Code:
        <?php
         $monat
        date("n"); 
         
        $jahr date("Y"); 
         
        $days date("t",mktime(0,0,0,$monat,1,$jahr)); 
         
        $tag date("w",mktime(0,0,0,$monat,1,$jahr)); 
         for(
        $aa=1;$aa<=$days;$aa++){ 
         
        $kij="".$aa."\n"
         if(
        $aa%7==0){ 
          
        $kij.="\n\n"
         } 
         echo 
        $kij
        }
        ich hab jetzt einfach unseren monat genommen...
        $tag ermittelt den ersten tag im monat(montag, dienstag,...)....
        wie schaff ich es(ohne class), immer den richtigen tag in der richtigen spalte zu haben....

        mfg thomas
        [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

        Kommentar


        • #19
          naja, da muss du einfach mal mitzählen. das heißt, wenn der erste tag ein di ist, dann stellst du den counter auf 2 statt 1.

          Kommentar


          • #20
            versuchs mal damit

            PHP-Code:
                $monatdate("n"); 
                
            $jahr date("Y"); 
                
            $AnzahlTage date("t",mktime(0,0,0,$monat,1,$jahr)); 
                
            $wochentag date("w",mktime(0,0,0,$monat,1,$jahr));
                
            $startTag 1// 0=So - 6=Sa
                
                
            $d $startTag $wochentag;
                while (
            $d 1$d -= 7;
                echo 
            "<pre>";
                while (
            $d <= $AnzahlTage)
                {
                    echo 
            "\n";  // nächste Wochenzeile    
                    
            for ($i 0$i 7$i++)  // aktuelle Wochenzeile
                    
            {
                        if (
            $d && $d <= $AnzahlTage)
                            echo (
            $d<10) ? " 0".$d " ".$d ;  // Tag
                        
            else
                            echo 
            "   "// LeerFelder
                        
            $d++;
                    }
                } 
            denke mal da bist du flexibel was den starttag angeht. Kannst die darstellung mit $startTag festlegen
            Zuletzt geändert von muecke0815; 23.07.2003, 20:20.
            ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
            und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

            Kommentar


            • #21
              ICH HABS GESCHAFFT!!!!


              Zuerst habe ich folgenden Code erstellt...(start.php)
              PHP-Code:
              <?php
              $jahr
              date("Y");
              $monatdate("n");
              ?>
              <html>
              <head>
              <title>
               Sie werden weitergeleitet...
              </title>
              <script type="text/javascript">
              function weiter(){
              window.location="time3.php?monat=<?php echo $monat ?>&jahr=<?php echo $jahr ?>";
              }
              </script>
              </head>
              <body onload="window.setTimeout('weiter()',2000)">
              <h1>
              Einen Augenblick, Sie werden weitergeleitet...
              </h1>
              <br>
              <a href="time3.php?monat=<?php echo $monat ?>&jahr=<?php echo $jahr ?>">Wenn Ihr Browser diese Funktion nicht unterstützt oder Sie nicht länger warten wollen, klicken Sie hier.</a>
              </body>
              </html>
              Dann in der time3.php-Datei:

              PHP-Code:
              <html>
              <head>
              <title>
               Kalender
              </title>
              <style type="text/css">
              a:link {text-decoration:none; font-family:times new roman; font-weight:bolder; color:#324334}
              a:visited {text-decoration:none; font-family:times new roman; font-weight:bolder; color:#324334}          //Damit die Links schöner werden....
              a:hover {text-decoration:underline; font-family:times new roman; font-weight:bolder; color:#000000}
              a:active {text-decoration:none; font-family:times new roman; font-weight:bold; color:#000000}

              </style>
              </head>
              <body>
              <center>
              <table border="1">
               <tr>
                <th colspan="7">
                 <?php 
                 $monat
              $_GET[monat];   //das heutige datum von start.php
                 
              $jahr$_GET[jahr];   
                 
              $st$_GET[st];   //st brauch ich, um zu wissen auf welchen link der user geklickt hat....
                 
              $monat1 = array("blabla","Januar","Februar","M&auml;rz","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember");   //blabla war nur dafür da, weil es den wert null hat, und den brauch ich nicht.....
                 
              $k$monat-1;   
                 
              $j$monat+1;
                 
                 if(
              $k==-&& $st==1){    //$st==1 bedeutet, dass er auf "<<" geklickt hat
                 
              $k=11;
                 
              $monat=12;
                 
              $jahr--;
                 }
                 if(
              $j==14 && $st==2){
                 
              $j=2;
                 
              $monat=1;
                 
              $jahr++;
                 }
                 echo 
              "<table border=\"0\" width=\"200px\"><tr><td width=\"10%\"><a href=\"time3.php?monat=" $k "&jahr=" $jahr "&st=1\"><<</a></td><td width=\"80%\" align=\"center\">" $monat1[$monat].",".$jahr."</td><td width=\"10%\"><a href=\"time3.php?monat=" $j "&jahr=" $jahr "&st=2\">>></a></td></tr></table>";
                 
              ?>
                </th>
               </tr>
               <tr>
                <?php
                $wochentag
              = array("Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag","Sonntag");
                for(
              $a=0;$a<=6;$a++){
                echo 
              "<td width=\"70px\" align=\"center\">".$wochentag[$a]."</td>";
                }
                
              ?>
               </tr>
               <tr>
                <?php

                $days 
              date("t",mktime(0,0,0,$monat,1,$jahr));
                
              $tag date("w",mktime(0,0,0,$monat,1,$jahr));
                
              $b=1;       
                
              $c=2;
                
              $d=0;
                if(
              $tag==0){
                while(
              $d<=5){
                echo 
              "<td>&nbsp</td>";
                
              $d++;
                
              $b++;
                 }
                }
                for(
              $c;$c<=$tag;$c++){
                 echo 
              "<td>&nbsp;</td>";
                 
              $b++;
                }
                for(
              $aa=1;$aa<=$days;$aa++){
                 
              $kij="<td>".$aa."</td>\n";
                  if(
              $b%7==0){   //wenn $b/7=0, soll er in die nächste zeile springen...
                  
              $b=0;
                  
              $kij.="\n</tr>\n<tr>";
                  }
                 echo 
              $kij;
                 
              $b++;
                }
                
                
              ?>
                 
               </tr>
              </table>
              </center>

              </body>
              </html>

              es zwar sehr langwierig, aber meine art, die ich auch verstehe...
              ich hoffe, der code ist noch halbwegs übersichtlich....

              mfg thomas
              [color=black] Important: alt bei <img> ist immer erforderlich · Strings richtig trennen/verbinden · Kiddie-Code hat keine Chance[/color]

              Kommentar


              • #22
                wow,

                das hättest du auch einfacher haben können :-) liegt noch ne menge arbeit vor dir optimierter zu arbeiten. ist aber ok, solange es funktioniert!

                aber zwei dateien hätten nicht sein müssen

                wenn du im time3.php

                PHP-Code:
                $jahr= (!isset($jahr)) ? date("Y") : $_GET[jahr];
                $monat= (!isset($monat)) ? date("n") : $_GET[monat]; 
                das schreibst kannst du dir start.php schenken
                ... und besucht mal den ebay(TM)-browser überhaupt: Lauge
                und damit das Fragen nen Ende hat: Der Progger davon sitzt mir gegenüber !

                Kommentar

                Lädt...
                X