Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z wyświetlaniem skryptu w danych datach i godzinach
Forum PHP.pl > Forum > PHP
1q2w3e4r
Witam,
Chcę aby moja strona wyświetlała się/była dostępna tylko w określonych dniach, tzn są dwa warunki:
Chcę aby wyświetlała się w każdym tygodniu roku we Wtorek od godziny 8:45 do piątku do godziny 16:00
Ale tylko między tymi datami: 14 maja do 16 października każdego roku.

Dlatego zwracam się do Was z prośbą, bo musi to działać. Nie może być takiej sytuacji żeby działało w piątek po 16:00 albo po 16 października lub wcześniej czyli 13maja.

Jak to można szybko rozwiązać aby nie trzeba było podawać dat?

Z góry dziękuje za pomoc.
celbarowicz
gogluj gogluj
  1. <?php
  2. echo time(); // to też jest data do testów
  3. echo '<br>';
  4. echo date("Y-m-d H:i:s" ,time());
  5. echo '<br>';
  6. echo $rok=date("Y" ,time());
  7. echo '<br>';
  8. echo $data_pocz='14-05-'.$rok;
  9. echo '<br>';
  10. echo $data_koncowa='16-10-'.$rok;
  11. echo '<br>';
  12. //Poniżej należy wpisać datę do testów.
  13. echo 'test=';
  14. echo $data_test='12-08-2011';
  15. echo '<br>';
  16. //sprawdzenie daty,w ifie możesz umieścić więcej warunków związanych np: z dniem tygodnia i godzinami
  17. if(strtotime($data_pocz)<=strtotime($data_test)&& strtotime($data_test)<=strtotime($data_koncowa))
  18. {echo 'testuj dalej=>sprawdź dzień tygodnia i godziny, jeśli dzień i godziny sprawdziłeś wcześniej to możesz już pokazać to co chciałeś';}else{echo 'odrzucamy';}
  19. echo '<br>';
  20. echo '<br>';
  21.  
  22. ?>

To na dobry początek,teraz kolej na Ciebie.
Norbit_24
  1. $aktualna_data = time();
  2.  
  3. $sprawdzanie_miesiaca = (int) date ("n", $aktualna_data);
  4. $sprawdzanie_dnia = (int) date ("j", $aktualna_data);
  5.  
  6. $sprawdzanie_godziny = (int) date ("G", $aktualna_data);
  7. $sprawdzanie_minuty = (int) date ("s", $aktualna_data);
  8.  
  9. $sprawdzanie_dzien_tygodnia = (int) date ("w", $aktualna_data); // 0 (niedziela) do 6 (sobota)
  10.  
  11. //$sprawdzanie_miesiaca = 5;
  12. //$sprawdzanie_dnia = 15;
  13.  
  14. //$sprawdzanie_dzien_tygodnia = 3;
  15. //$sprawdzanie_godziny = 21;
  16. //$sprawdzanie_minuty = 21;
  17.  
  18. // dostępne od 14 maja dostępne do 16 października dostepne od czerwca do września
  19. if( (($sprawdzanie_miesiaca == 5 AND $sprawdzanie_dnia >= 14) OR ($sprawdzanie_miesiaca == 10 AND $sprawdzanie_dnia <= 16)) OR ($sprawdzanie_miesiaca >= 6 AND $sprawdzanie_miesiaca <= 9) )
  20. {
  21. // dostepne od powiedziałku godziny 12 dostepne do piatku godziny 16 dostepne od wtorku do piatku
  22. if( (($sprawdzanie_dzien_tygodnia == 1 AND $sprawdzanie_godziny >= 12) OR ($sprawdzanie_dzien_tygodnia == 5 AND $sprawdzanie_godziny <= 16)) OR ($sprawdzanie_dzien_tygodnia >= 2 AND $sprawdzanie_dzien_tygodnia <= 4) )
  23. {
  24.  
  25. echo 'przeszło <br /><br />';
  26. echo 'miesiąc: '.$sprawdzanie_miesiaca;
  27. echo '<br />';
  28. echo 'dzień: '.$sprawdzanie_dnia;
  29. echo '<br /><br />';
  30. echo 'godzina: '.$sprawdzanie_godziny;
  31. echo '<br />';
  32. echo 'dzien tygodnia: '.$sprawdzanie_dzien_tygodnia;
  33. }
  34. }


Do końca chyba profesjonalnie nie jest ale chyba działa. Testowałem różne godziny.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.