2017-01-26 4 views
-1

Ich hoffe, dass Sie einen Hinweis für mich haben, wie ich dieses Problem lösen kann. Ich zeige meinen Kunden eine Art Rangliste. Die Daten innerhalb der Rangliste sind sehr wichtig und die Rangliste zählt alle ausgewählten Punkte ab Dienstag für 2 Wochen bis Montag letzter Woche. Alles funktioniert soweit, außer heute ist Dienstag, denn mit meiner Funktion zeigt das Programm am Dienstag die Rangliste für die letzten zwei Wochen an, außer von letzter Woche.PHP - Datum und Uhrzeit Anzeige Problem

Hier ist mein Code verwende ich:

$start_date_week=strtotime('-2 week tuesday 00:00:00'); 
$end_date_week=strtotime('-1 week monday 23:59:59'); 

Wenn also heute Dienstag ist, mein Programm zeigt mir die Daten aus den letzten 2 Wochen. An jedem zweiten Tag werden die Daten der letzten Woche korrekt angezeigt. Irgendeine Idee, wie ich das schaffen kann, auch wenn heute Dienstag ist?

Mit diesen 2 Variablen ich meine Daten aus der Datenbank erhalten und diese beiden variabes zeigen auch das Datum von bis zu dem Zeitpunkt zu:

.date("d.m.Y", $start_date_week)." - ".date("d.m.Y", $end_date_week)." 

Bitte lassen Sie mich wissen, wie ich dieses Problem lösen kann.

Danke, Chris

+0

warum nicht eine einfache Abfrage für wenn date = Dienstag laufen und Führen Sie eine Abfrage aus, um das 2-Wochen-Protokoll anzuzeigen, und verwenden Sie dann das Else-Symbol, um das 1-Wochen-Protokoll anzuzeigen. – Option

Antwort

1

Ich werde dies hier hinzufügen, wie ich Sie fühlen sind über etwas nachzudenken, die vereinfacht werden könnte:

$timestamp = time(); 
if (date('D', $timestamp) === 'Tue') 
{ 
    // run a database query for 2 weeks of logs 
    echo "2 week log"; 
} else { 
    // run database query for 1 week of logs 
    echo "1 week log"; 
} 
+0

das ist ein sehr guter Hinweis. Du hast Recht, ich dachte darüber nach. Ich brauche nicht das 2-Wochen-Protokoll, ich brauche immer nur 1 Woche Protokoll, aber ich kann deine if-Anweisung verwenden, um zu überprüfen, ob es Dienstag ist und wenn es Dienstag ist, sollte er mir das Protokoll vom Dienstag vor 1 Woche besorgen und wenn heute nicht Dienstag sollte er mir das Protokoll vom Dienstag vor 2 Wochen geben. So sollte es funktionieren, denke ich. Danke für deinen Hinweis. –

+0

Kein Problem. Wenn Sie glauben, dass diese Antwort richtig war, bestätigen Sie bitte die beste Antwort für Sie. – Option

+0

Fertig. Vielen Dank! –