Witam zrobiłem harmonogram, który wyświetla zadania do wykonania na dzisiejszy i jutrzejszy dzień. Gorzej jest już z pojutrze i za 3 dni i tak dalej, a chciałbym, żeby dało się wyświetlić 30 dni wprzód. Problem polega na tym, że kolejne dni się wyświetlają w dniu jutrzejszym:
Powyższy rysunek przedstawia panel po załadowaniu strony. Pokazuje zadania dla dnia 17.03
Powyższy rysunek przedstawia panel po wciśnięciu przycisku dalej. Pokazuje zadania dla dnia 18.03
Mój skrypt na razie pozwala przemieszczać się tylko po tych dwóch datach co staje się być również problemem.
Oto kod php załadowanej tabeli:
for($i=0;$i<30;$i++)
{
$rezultat = $polaczenie -> query("SELECT * FROM harmonogram WHERE data=curdate() + INTERVAL '$i' DAY AND user='$idik' GROUP BY start");
while(list($id,$data,$godzina_poczatkowa,$opis,$godzina_koncowa)=mysqli_fetch_row($rezultat))
{
if($i==0)
{
echo "<tr class='zero'><td>".$godzina_poczatkowa."</td><td>".$godzina_koncowa."</td><td>".base64_decode($opis)."</td></tr>";
} else if ($i>0) {
echo "<tr class='st' style='display:none;'><td>".$godzina_poczatkowa."</td><td>".$godzina_koncowa."</td><td>".base64_decode($opis)."</td></tr>";
}
}
}
oraz kod JS przesuwający dzień:
function funkcja (){
$('.zero').css({'display':'none'});
$('.st').css({'display':'table-row'});
var date = new Date();
var day = date.getDate();
var month = date.getMonth();
parseInt(day);
day += 1;
parseInt(month);
month += 1;
var year = date.getFullYear();
//start
var d = new Date(year, month, 0);
var puf = d.getDate();
if (day > puf)
{
day=1;
month+=1;
}
if (month < 10)
{
month = "0" + month;
}
Jeśli coś jest niejasne również proszę o komentarz. Chciałbym mieć możliwość w tej aplikacji internetowej swobodnego przesuwania się między kolejnymi dniami (na przestrzeni 30 dni). Niestety nie mam pojęcia jak wyjść po za kolejny dzień, bo nie sądze, żeby był sens tworzenia 30 klas.