Chris: MySQL Querys in Schleifen ?

Beitrag lesen

Hallo zusmmammen,

ich habe mir einen kleinen Kalender geschrieben und hänge im Moment bei dem markieren der Termine fest.

Der Kalender bezieht sich immer auf die nächsten 14 Tage und gleicht die vorhandenen Termine aus der DB ab, ist ein Termin für einen Tag vorhanden so soll die Funktion TRUE zurückgeben.

Meine Funktion klappt "1A" nur bin ich mir nicht sicher ob ich den Query der mir die Termine aus der DB holt in der Schleife lassen kann, 5 Aufrufe pro Seite * 15 Querys = wären gleich 75 Querys pro Ergebnisseite und Aufruf ;-)

Hat da vieleicht jemand von euch eine für den Server bessere Idee wie ich die Abfrage gestallten kann ?

Hier der Code:

function Termine ($user_id) {

for($x=1; $x<15; $x++) {

// Holt alle Termine für die UserID Format: Y-m-d
    $result = $this->db_query({QUERY});

// Aktueller Tag +1 das ganze 15 Mal für die naechsten 14 Tage
    $aktuell=date ("Y-m-d", mktime(0, 0, 0, date("m"), date("d")+$x, date("Y")));
    // Vergleichen der Termine aus der DB mit dem jeweiligen Tag
    for($i=1; $i<15; $i++) {

$row = $this->db_fetcharray($result);
      if($aktuell == $row[day]) {
        $make_kreuz = true;
      }

}

if($make_kreuz == true) {
      $kreuze .= "Termin";
    }elseif($make_kreuz == false) {
      $kreuze .= "kein Termin";
    }

$make_kreuz=false;
  $this->db_free($result);

}

return $kreuze;

}

Danke für jeden Tipp und viele Grüße,

Chris