Ankündigung

Einklappen
Keine Ankündigung bisher.

Timetable Schleife will nicht

Einklappen

Neue Werbung 2019

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

  • Timetable Schleife will nicht

    Hallo Leute,

    ich baue für ein gemeinsam genutztes Auto eine Buchungsseite, damit jeder eintragen kann wann er den Wagen braucht.

    Mein Code zeigt alles schon so an, wie es aussehen soll, aber sobald ich einen Wert anzeigen (Bsp. Mittwoch um 15 Uhr) lassen will, zeigt er diesen nicht an.
    Was mache ich falsch? Es liegt sicher an meiner Suche im Array, aber ich weiß nicht mehr weiter.

    Habt jemand vielleicht eine Idee?


    PHP-Code:
    $query_schedule "SELECT * FROM buchung WHERE buchtag";
    $schedule mysql_query($query_schedule$db) or die(mysql_error());
    $row mysql_fetch_assoc($schedule);
    $heute date("w",time())-1//Sonntag=0 
        
    $day = array(); 
         
        for(
    $i=0;$i<7;$i++) 
            
    $day[]     = date("d.m.Y",mktime(0,0,0,date("m",time()),date("d",time())-$heute+$i,date("Y",time()))); 
    $buchstartArray=array('Montag','Dienstag','Mittwoch','Donnerstag','Freitag','Samstag','Sonntag');
    //$hours=array("00:00","00:30","01:00","01:30","02:00","02:30","03:00","03:30","04:00","04:30","05:00","05:30","06:00","06:30","07:00","07:30","08:00","08:30","09:00","09:30","10:00","10:30","11:00","11:30","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00",);

      
    $hours array_map(function($in) {
        
    $data explode('.'$in);
        
    $hours $data[0];
        
    $minutes = isset($data[1]) ? $data[1] : 0;
        return 
    number_format($hours + (float)('.'.$minutes) * 60 1002':','');
    }, 
    range(0.0,231));  //$hours=array("00:00","01:00","02:00","03:00","04:00","5:00","06:00","07:00","08:00","09:00","10:00","11:00","12:00","13:00","14:00","15:00","16:00","17:00","18:00","19:00","20:00","21:00","22:00","23:00",);

    $buchtag=array();
    $buchstart=array();
    $i=0;
    do{      
    $buchtag[$i]='05:00';//$row['buchtag'];
          
    $buchstart[$i]='Dienstag';//$row['buchstart'];
          
    $i++;
    }while(
    $row mysql_fetch_array($schedule));



    echo 
    "<table border=0 cellpadding=3>";
    echo 
    "<tr>";
    echo 
    "<td bgcolor='#0099CC'><strong>Uhrzeit</strong></td>";
    foreach(
    $hours as $cell) {
     echo 
    "<th colspan='0' border= '0' bgcolor='#F5561F'><c1><strong>$cell</strong></c1></th>";  
    }  echo
    "</tr>"  ;

    foreach(
    $buchstartArray as $val){
    echo 
    "<tr><td bgcolor='#0099CC'><strong>$val</strong>";
    echo
    "</td>";
    foreach(
    $buchstartArray as $val)

    {
                
    $val=$val.'';    
         if(
    in_array($val,$buchstart))
         {
              
    $i=array_search($val,$buchstart);    
         if(
    $val==$buchstart[$i])
         
    foreach(
    $hours as $cell
    {    
                
    $cell=$cell.'';
          if(
    in_array($cell,$buchtag))
          {
              
    $i=array_search($cell,$buchtag);    
         if(
    $cell==$buchtag[$i])
         {
         
         }
         echo 
    "<td bgcolor='#FF0066'>lala</td>";
        }
         
          else
        echo 
    "<td bgcolor='#B5D90C'></td>";
        }
        echo 
    "</tr>";
        }
    }}


    //Ausgabe Test
    echo "</table>";
    print_r($val);
    echo 
    "<br>";
    print_r ($cell);
    echo 
    "<br>";
    echo 
    $buchtag[$i];
    echo 
    "<br>";
    echo 
    $buchstart[$i];
    ?> 


  • #2
    Jetzt mal ganz blöd gefragt: Warum machst du nicht zB über Google-Docs ein "Online-Spreadsheet" und gibts den Link denen die drauf zum Bearbeiten hindürfen und fertig. https://docs.google.com/spreadsheet/ Könnte man sich ja auch dann wie einen Schul-Stundenplan darstellen etc.. wäre in paar Minuten fertig und jeder kann damit umgehen.

    Natürlich ist es nie schlecht PHP zu "lernen", keine Frage, aber dein Code braucht auf den ersten Blick noch etwas mehr als dem was du suchst. Alleine schon die veraltetet mysql_ Erweiterung solltest du gleich aktualisieren, ebenso SELECT * nicht zu verwenden und besser die DateTime-Klasse zu verwenden an statt der "alten date()-Funktionen".

    Ansonsten noch generelle Hinweise zum debuggen, das gehört dazu das du deine eigenen Fehler selbst soweit eingrenzen kannst das du daraus konrekte Fragen ableiten kannst. Ich vermute den Code oben wird sich keiner "gerne" im Detail ansehen und für dich zu debuggen.

    Mach an den relevanten Stellen Kontrollausgaben etc.. Weitere siehe hier: http://php-de.github.io/#debugging

    LG
    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar

    Lädt...
    X