tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
698
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von Jesus0190
    Jesus0190 Jesus0190 ist offline Mitglied Bronze
    Registriert seit
    Feb 2002
    Ort
    Braunschweig
    Beiträge
    47
    Hallo Leute,

    ich habe folgendes Problem und hoffe es kann jemand lösen.
    Ich möchte für meine Homepage (Handball) aus dem aktuellen Spielplan die Spiele des letzten Wochenendes und die des nächsten Wochenendes ausgeben.

    Jetzt das Problem, ich weiss nicht wie ich die Funktion date("W",$time) die die Woche zurückgibt in meinen SQL-Query einbinde.

    Bisher mache ich es so, aber das mit den Timestamps geht nicht so gut...
    PHP-Code:
    $time time();

    # für die letzte Woche:
    $sql "SELECT * FROM spielplan WHERE datum > $time-604800 AND datum < $time ORDER BY datum ASC";

    #und für die nächste:
    $sql "SELECT * FROM spielplan WHERE datum > $time AND datum < $time+604800 ORDER BY datum ASC"
    [EDIT]: Also das ganze soll natürlich wieder in 2 Abfragen

    Ich hoffe, jemandem fällt was ein wie ich von dem Timestamp aus der Datenbank die Woche auslesen kann.

    MfG
    Jesus0190
    Geändert von Jesus0190 (06.04.04 um 13:44 Uhr)
     

  2. #2
    Registriert seit
    Dec 2002
    Ort
    Trier
    Beiträge
    17.502
    Blog-Einträge
    10
    Lies dir mal die Seiten zur Datumsberechnung und den Datumsfunktionen durch:
    &nbsp;&rsaquo;&rsaquo;&nbsp;MySQL Manual | 4.3.4.5 Datumsberechnungen
    &nbsp;&rsaquo;&rsaquo;&nbsp;MySQL Manual | 7.3.4 Datums- und Zeit-Funktionen
     
    Markus Wulftange

  3. #3
    Registriert seit
    Aug 2002
    Ort
    Hessen
    Beiträge
    693
    PHP-Code:
    <?php
    $w_heute 
    date('w'); // Heute als numerischer Tag der Woche ( 0:Sonntag - 6:Samstag)
    $heute mktime(000date('m'), date('d'), date('Y')); // Timestamp von Heute ab 00:00 Uhr
    $letztes_we $heute - (($w_heute 2) * 86400); // Timestamp des ersten Tages (Freitag) vom letzten Wochenende
    $naechstes_we $heute + (($w_heute) * 86400); // Timestamp des ersten Tages (Freitag) vom nächsten Wochenende

    // Bsp. für die SQL-Abfragen:
    // für das letzte Wochenende... 
    $sql "SELECT * FROM spielplan WHERE datum > ".$letztes_we." AND datum < ".($letztes_we 259200)." ORDER BY datum ASC"

    // ...und für das nächste: 
    $sql "SELECT * FROM spielplan WHERE datum > ".$naechstes_we." AND datum < ".($naechstes_we 259200)." ORDER BY datum ASC";
    ?>
    ...vielleicht hilft dir sowas ja weiter...
     
    "... the KKK took my baby away ..."

  4. #4
    Avatar von Jesus0190
    Jesus0190 Jesus0190 ist offline Mitglied Bronze
    Registriert seit
    Feb 2002
    Ort
    Braunschweig
    Beiträge
    47
    @Gumbo:
    Danke für die Info, hab es auch mit interesse durchgelesen, aber leider kann man nicht mit Timestamps arbeiten soweit ich das verstanden habe. Du kannst mich aber gerne eines besseren belehren

    Edit: Ich glaub ich hab das doch nicht richtig gelesen. *lol* mal schauen ob ich nicht doch zu faul bin...

    @ludz:
    Das werd ich auch mal ausprobieren, danke schonmal für die mühe die du dir gemacht hast. Werde dann auch berichten, ob es funktioniert.

    MfG
    Jesus0190
     

  5. #5
    Avatar von Jesus0190
    Jesus0190 Jesus0190 ist offline Mitglied Bronze
    Registriert seit
    Feb 2002
    Ort
    Braunschweig
    Beiträge
    47
    Sorry ludz, deins hab ich nichtmehr ausprobiert, weil Gumbo sein Hinweis alles gelöst hat.

    Lösung(en):

    PHP-Code:
    #letztes Wochenende:
    $sql "SELECT * FROM spielplan WHERE YEARWEEK(FROM_UNIXTIME(datum),1) = YEARWEEK(NOW()) ORDER BY datum ASC";

    #nächstes Wochenende:
    $sql "SELECT * FROM spielplan WHERE YEARWEEK(FROM_UNIXTIME(datum),1) = YEARWEEK(NOW())+1 ORDER BY datum ASC"
    Danke nochmal an beide.
     

Ähnliche Themen

  1. Tage der aktuellen Woche anzeigen
    Von Arndtinho im Forum PHP
    Antworten: 4
    Letzter Beitrag: 01.04.07, 17:01
  2. Anzahl der Datensätze einer bestimmten Zeitspanne (Woche, Monat, etc.) abfragen
    Von SchwarzerWolf im Forum Relationale Datenbanksysteme
    Antworten: 4
    Letzter Beitrag: 25.08.06, 07:46
  3. Alle Datensätze einer Woche
    Von CyrusOne im Forum ASP
    Antworten: 33
    Letzter Beitrag: 22.08.06, 11:00
  4. Antworten: 2
    Letzter Beitrag: 12.04.05, 13:51
  5. Nur Datensätze zwischen der aktuellen Uhrzeit + - 3 Minuten anzeigen
    Von Manuelh im Forum Relationale Datenbanksysteme
    Antworten: 9
    Letzter Beitrag: 08.04.05, 22:36