Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] List Rozwijana Z Wybranymi Datami.
BirdWatcher
post 9.08.2007, 16:20:31
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 14.12.2006

Ostrzeżenie: (0%)
-----


Witam, czy ktos moglby mi pomoc ze skryptem prostej listy rozwijanej ktora wyswietla:
- date 14 kolejnych dni
- za wyjatkiem sobot i niedziel
- jesli jest po 12 w poludnie, to jako pierwsza data jest nastepny dzien(ale nie sobota i niedziela)

wymyslilem cos takiego, ale kompletnie nie dziala:

  1. <?php
  2. function col_date(){
  3. $now = strftime('%A' . ", " . '%d %b %Y');
  4.  
  5. for ($i=0;$i<14;$i++){
  6. $now = strtotime($now);
  7. $now = $now + $i *24 *3600;
  8. $now = strftime('%A' . ", " . '%d %b %Y', $now);
  9.  
  10. if (strftime('%w', $now) == "5"){
  11. $now = strtotime($now);
  12. $now = $now + 2 *24 *3600;
  13. $now = strftime('%A' . ", " . '%d %b %Y', $now);
  14.  
  15. }elseif (strftime('%w', $now) == "6"){
  16. $now = strtotime($now);
  17. $now = $now + 1 *24 *3600;
  18. $now = strftime('%A' . ", " . '%d %b %Y', $now);
  19.  
  20. }
  21. echo "<option>$now</option><br>";
  22.  
  23. }
  24. }
  25. ?>


Z góry dzieki za pomoc.
Go to the top of the page
+Quote Post
1010
post 10.08.2007, 08:53:47
Post #2





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

Ostrzeżenie: (0%)
-----


  1. <?
  2. function form()
  3. {
  4.  $dzis = mktime();
  5.  if(date("G", $dzis)>=12)
  6.  {
  7. $dzis+=86400;
  8. //jezeli jest juz 12 to przekrecamy poczatek o jeden dzien
  9.  }
  10.  //wyswietlamy kazdy z kolejnych 14 dni
  11.  for($i=1; $i<=14; $i++)
  12.  {
  13. if(date("w", $dzis)!=&& date("w", $dzis)!=6)
  14. {
  15.  $data = date("d.m.Y", $dzis);
  16.  echo "<option>$data</option><br>";
  17. }
  18. $dzis+=86400;
  19.  }
  20. }
  21.  
  22. form();
  23. ?>


--------------------
Go to the top of the page
+Quote Post
BirdWatcher
post 10.08.2007, 09:07:51
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 14.12.2006

Ostrzeżenie: (0%)
-----


dzieki bardzo, ale jeszcze jedna rzecz:

te 14 dni, to kalendarzowych, tzn ze jesli pierwsza data to 01.08.2007 to ostatnia ma byc 15.08.2007, da sie tak ?biggrin.gif
Go to the top of the page
+Quote Post
1010
post 10.08.2007, 09:15:17
Post #4





Grupa: Zarejestrowani
Postów: 749
Pomógł: 37
Dołączył: 3.10.2006

Ostrzeżenie: (0%)
-----


Czyli po prostu 1 dzień więcej?

  1. <?
  2. function form()
  3. {
  4.  $dzis = mktime();
  5.  if(date("G", $dzis)>=12)
  6.  {
  7. $dzis+=86400;
  8. //jezeli jest juz 12 to przekrecamy poczatek o jeden dzien
  9.  }
  10.  //wyswietlamy kazdy z kolejnych 14 dni
  11.  for($i=1; $i<=15; $i++)
  12.  {
  13. if(date("w", $dzis)!=&& date("w", $dzis)!=6)
  14. {
  15.  $data = date("d.m.Y", $dzis);
  16.  echo "<option>$data</option><br>";
  17. }
  18. $dzis+=86400;
  19.  }
  20. }
  21.  
  22. form();
  23. ?>


--------------------
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 02:51