Variable aktuelle Woche + 1 und -1 erstellen

diehetti

Grünschnabel
Hallo liebes Forum,

ich bin in Sachen Programmierung leider recht ... nun ja... unerfahren. Über Eure Hilfe würde ich mich deshalb sehr freuen.

Es geht darum zwei Variablen zu erstellen, die mir ermöglichen einen Link zur letzten und zur nächsten Woche zu setzen. Allerdings sind diese Wochen gekoppelt an eine User ID. Diese ist fortlaufend. Jeder User hat seine eigene Wochenplanung. Das heißt die Wochenpläne sind gekoppelt an die User ID. Ich müsste also für eine Variable erst die User ID auslesen, dann die aktuelle Woche herausfinden, dann die Woche jeweils plus und minus 1, oder? Genau DA habe ich nun plötzlich ein Knoten im Hirn und komme nicht weiter, wie ich hier das plus und minus 1 Woche einbaue.

Das Auslesen der aktuellen Woche:

PHP:
//Aktueller Plan
if($_GET['plan']=='aktuell'){
    //die aktuelle Wochennummer ermitteln und dann in der Tabelle wochen nachsehen, welche id dies ist und dann mit
    //dieser id die Datei plan.php aufrufen (id wird als GET übergeben.)

    $jahr_woche = date("YW",time());

    $strSQL = "SELECT id FROM plangruppe WHERE laeufer = ".$zeile_logname['id']." and woche=".$jahr_woche;           
    
    $erg_plangruppe = mysql_query($strSQL, $Con) or die("Fehler in der Datenbankanfrage Datei: ".__FILE__.", Zeile: ".__LINE__);

    $zeile_plangruppe = mysql_fetch_assoc($erg_plangruppe);
    
    if(!$zeile_plangruppe['id']) {
        print("<div class=\"meldung\" align=\"center\">F&uuml;r die aktuelle Woche ist kein Plan angelegt. </div>");
    }
    else{
        $_GET['woche_id'] = $zeile_plangruppe['id'];
    }
}

if($_GET['woche_id']){
    //entsprechende Datens?tze aus der Tabelle plan auslesen
    $strSQL = "SELECT * FROM plan WHERE plangruppe=".$_GET['woche_id']." and laeufer = ".$zeile_logname['id']." ORDER BY datum";
    
    $erg_plan = mysql_query($strSQL, $Con) or die("Fehler in der Datenbankanfrage Datei: ".__FILE__.", Zeile: ".__LINE__);

Herzlichen Dank für Eure Hilfe :)
 
Hallo diehetti

Da du ja die KW-Woche nimmst und die Woche davor + die Woche danach willst, würde ich folgendes vorschlagen:

PHP:
$jahr_woche_bevor = date("YW",time())-1;

$jahr_woche_spaeter = date("YW",time())+1;

Als Output wird dir dieses generiert: 201242 und 201244

Grüsse
 
Hallo,

diese Darstellung des Wochendatums ist nicht eindeutig:
PHP:
$jahr_woche = date("YW",time());
Wenn du beispielsweise den Wert vom 1. Januar 2012 und vom 24. Dezember 2012 bildest, dann erhältst du für beides den gleichen Wert.
PHP:
echo date("YW", mktime(0, 0, 0, 1, 1,2012)).'<br>';  /* Ausgabe: 201252 */
echo date("YW", mktime(0, 0, 0,12,24,2012)).'<br>';  /* Ausgabe: 201252 */
Das liegt einfach daran, dass der 1. Januar 2012 noch zur letzten Woche des Vorjahres gehört!
 

Neue Beiträge

Zurück