Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Przetwarzanie daty z selecta
viamarimar
post
Post #1





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


Prosty kod na przetwarzanie daty date podaje w formacie XXXX-xX-XX, a powinno sie zwrocic kiedy,x nazwa xxxx(na tej zasadzie)
Calosc jest niby ok tylko z selecta zawsze jest zwracany default, pomoze ktos?

  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Untitled Document</title>
  6. </head>
  7.  
  8. <body>
  9. <?php
  10. #echo "<b>PRZYKŁAD</b><br>";
  11. #echo "#Zakładając, że dzis mamy ".date("j-m-Y") ." to ".date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")))." to jest przedwczoraj.<br>";
  12. ?>
  13.  
  14.  
  15.  
  16. <?php
  17. echo "Podaj date w formacie YYYY-MM-DD"; ?>
  18. <form action="plik2.php" method="POST">
  19. Wpisz date:<input type="text" name="data" /><br /><br />
  20. <input type="submit" value="Wyślij" name="submit"/>
  21. <input type="submit" value="Reset" name="submit2"/>
  22. </form>
  23. <?
  24. if (isset($_POST['submit'])) {
  25.  
  26.  
  27.  
  28. #date("F j, Y", strtotime("yesterday"));
  29.  
  30. $data=$_POST['data'];
  31. if(!empty($data)){
  32. if(preg_match("/^[0-9]{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])$/" , $data)) {
  33.  
  34. $dni_tygodnia = array( 'niedziela', 'poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota' );
  35. $dzien_tygodnia = date("w",strtotime($data));
  36. $miesiac = date("n",strtotime($data));
  37. $miesiace = array(1 => 'stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia');
  38. $dzien = date("j",strtotime($data));
  39. $rok = date("Y",strtotime($data));
  40.  
  41. #date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")))." to jest przedwczoraj.<br>";
  42.  
  43.  
  44. $za_3_dni=date("j-m-Y",mktime(0,0,0,date("n"),date("j")+3,date("Y")));
  45. $pojutrze= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+2,date("Y")));
  46. $jutro= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+1,date("Y")));
  47. $dzisiaj= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")));
  48. $wczoraj= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-1,date("Y")));
  49. $dwa_dni_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")));
  50. $trzy_dni_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-3,date("Y")));
  51. $tydzien_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-7,date("Y")));
  52. $za_tydzien= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+7,date("Y")));
  53. $miesiac_temu= date("j-m-Y",mktime(0,0,0,date("n")-1,date("j"),date("Y")));
  54. $za_miesiac= date("j-m-Y",mktime(0,0,0,date("n")+1,date("j"),date("Y")));
  55. $rok_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")-1));
  56. $za_rok= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")+1));
  57. $dwa_tyg_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-14,date("Y")));
  58. $za_dwa_tyg= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+14,date("Y")));
  59.  
  60. switch ($data)
  61. {
  62. case $wczoraj:
  63. $kiedy= "wczoraj";
  64. break;
  65. case $dwa_dni_temu:
  66. $kiedy= "przedwczoraj";
  67. break;
  68. case $trzy_dni_temu:
  69. $kiedy= "trzy dni temu";
  70. break;
  71. case $dzisiaj:
  72. $kiedy= "dzisiaj".", ".date("G:i:s",mktime(date("G"),date("i"),date("s")));
  73. break;
  74. case $jutro:
  75. $kiedy= "jutro";
  76. break;
  77. case $pojutrze:
  78. $kiedy= "pojutrze";
  79. break;
  80. case $za_3_dni:
  81. $kiedy= "za 3 dni";
  82. break;
  83. case $tydzien_temu:
  84. $kiedy= "tydzien temu";
  85. break;
  86. case $za_tydzien:
  87. $kiedy= "za tydzień";
  88. break;
  89. case $miesiac_temu:
  90. $kiedy= "miesiąc temu";
  91. break;
  92. case $za_miesiac:
  93. $kiedy= "za miesiąc";
  94. break;
  95. case $rok_temu:
  96. $kiedy= "rok temu";
  97. break;
  98. case $za_rok:
  99. $kiedy= "za rok";
  100. break;
  101. case $dwa_tyg_temu:
  102. $kiedy= "2 tygodnie temu";
  103. break;
  104. case $za_dwa_tyg:
  105. $kiedy= "za 2 tygodnie";
  106. break;
  107. case $mc:
  108. $kiedy= "ubiegły miesiąc";
  109. break;
  110. default:
  111. $kiedy= "nie kojarzę, kiedy to było, ale za to wiem, w jaki dzień wypada";
  112. }
  113.  
  114. echo $kiedy.", ".$dni_tygodnia[ $dzien_tygodnia ].", ".$dzien." ".$miesiace[$miesiac]." ".$rok." roku.";
  115.  
  116. }
  117. else{
  118. echo "Nie podales daty!";
  119. }
  120.  
  121. }
  122. else{
  123. echo "Podaj date!";
  124. }
  125.  
  126. }
  127.  
  128. ?>
  129. </body>
  130. </html>
  131.  
  132.  
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
viamarimar
post
Post #2





Grupa: Zarejestrowani
Postów: 303
Pomógł: 1
Dołączył: 24.09.2011

Ostrzeżenie: (10%)
X----


-pierwszy post nie byl edytowany, co do tego nie dziala,dodalem pickera z dobrym formatem wiec tak jak mowil powyzej Pan przepraszam jesli ten blad jest idiotyczny a moja wiedza nie jest taka jak wasza no ale to chyba odpowiedni dzial

- nie dzialaja mi daty w tyl np wczoraj? itd? cala reszta do przodu pojutrze jutro id jest ok ale czemu tak?
  1. <!doctype html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8">
  5. <title>Untitled Document</title>
  6. <link rel="stylesheet" href="//code.jquery.com/ui/1.11.2/themes/smoothness/jquery-ui.css">
  7. <script src="//code.jquery.com/jquery-1.10.2.js"></script>
  8. <script src="//code.jquery.com/ui/1.11.2/jquery-ui.js"></script>
  9. <script>
  10. $(function() {
  11. $("#datepicker").datepicker({ dateFormat: "dd-mm-yy" }).val()
  12. });
  13. </script>
  14.  
  15. </head>
  16.  
  17. <body>
  18. <?php
  19. #echo "<b>PRZYKŁAD</b><br>";
  20. #echo "#Zakładając, że dzis mamy ".date("j-m-Y") ." to ".date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")))." to jest przedwczoraj.<br>";
  21. ?>
  22.  
  23.  
  24.  
  25. <?php
  26. echo "Podaj date w formacie j-m-Y"; ?>
  27. <form action="plik2.php" method="POST">
  28. Wpisz date:<input type="text" name="data" id="datepicker"><br /><br />
  29. <input type="submit" value="Wyślij" name="submit"/>
  30. <input type="submit" value="Reset" name="submit2"/>
  31. </form>
  32. <?
  33. if (isset($_POST['submit'])) {
  34.  
  35.  
  36.  
  37. #date("F j, Y", strtotime("yesterday"));
  38.  
  39. $data=$_POST['data'];
  40. //$data1=strtotime("$data");
  41. //echo $data1;
  42. //echo strtotime ( "10 września 2000" ), "\ n<br><br>" ;
  43. if(!empty($data)){
  44. $dni_tygodnia = array( 'niedziela', 'poniedziałek', 'wtorek', 'środa', 'czwartek', 'piątek', 'sobota' );
  45. $dzien_tygodnia = date("w",strtotime($data));
  46. $miesiac = date("n",strtotime($data));
  47. $miesiace = array(1 => 'stycznia', 'lutego', 'marca', 'kwietnia', 'maja', 'czerwca', 'lipca', 'sierpnia', 'września', 'października', 'listopada', 'grudnia');
  48. $dzien = date("j",strtotime($data));
  49. $rok = date("Y",strtotime($data));
  50.  
  51. #date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")))." to jest przedwczoraj.<br>";
  52.  
  53.  
  54. $za_3_dni=date("j-m-Y",mktime(0,0,0,date("n"),date("j")+3,date("Y")));
  55. $pojutrze= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+2,date("Y")));
  56. $jutro= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+1,date("Y")));
  57. $dzisiaj= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")));
  58. $wczoraj= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-1,date("Y")));
  59. $dwa_dni_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-2,date("Y")));
  60. $trzy_dni_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-3,date("Y")));
  61. $tydzien_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-7,date("Y")));
  62. $za_tydzien= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+7,date("Y")));
  63. $miesiac_temu= date("j-m-Y",mktime(0,0,0,date("n")-1,date("j"),date("Y")));
  64. $za_miesiac= date("j-m-Y",mktime(0,0,0,date("n")+1,date("j"),date("Y")));
  65. $rok_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")-1));
  66. $za_rok= date("j-m-Y",mktime(0,0,0,date("n"),date("j"),date("Y")+1));
  67. $dwa_tyg_temu= date("j-m-Y",mktime(0,0,0,date("n"),date("j")-14,date("Y")));
  68. $za_dwa_tyg= date("j-m-Y",mktime(0,0,0,date("n"),date("j")+14,date("Y")));
  69.  
  70. switch ($data)
  71. {
  72. case $wczoraj:
  73. $kiedy= "wczoraj";
  74. break;
  75. case $dwa_dni_temu:
  76. $kiedy= "przedwczoraj";
  77. break;
  78. case $trzy_dni_temu:
  79. $kiedy= "trzy dni temu";
  80. break;
  81. case $dzisiaj:
  82. $kiedy= "dzisiaj".", ".date("G:i:s",mktime(date("G"),date("i"),date("s")));
  83. break;
  84. case $jutro:
  85. $kiedy= "jutro";
  86. break;
  87. case $pojutrze:
  88. $kiedy= "pojutrze";
  89. break;
  90. case $za_3_dni:
  91. $kiedy= "za 3 dni";
  92. break;
  93. case $tydzien_temu:
  94. $kiedy= "tydzien temu";
  95. break;
  96. case $za_tydzien:
  97. $kiedy= "za tydzień";
  98. break;
  99. case $miesiac_temu:
  100. $kiedy= "miesiąc temu";
  101. break;
  102. case $za_miesiac:
  103. $kiedy= "za miesiąc";
  104. break;
  105. case $rok_temu:
  106. $kiedy= "rok temu";
  107. break;
  108. case $za_rok:
  109. $kiedy= "za rok";
  110. break;
  111. case $dwa_tyg_temu:
  112. $kiedy= "2 tygodnie temu";
  113. break;
  114. case $za_dwa_tyg:
  115. $kiedy= "za 2 tygodnie";
  116. break;
  117. case $mc:
  118. $kiedy= "ubiegły miesiąc";
  119. break;
  120. default:
  121. $kiedy= "nie kojarzę, kiedy to było, ale za to wiem, w jaki dzień wypada";
  122. }
  123.  
  124. echo $kiedy.", ".$dni_tygodnia[ $dzien_tygodnia ].", ".$dzien." ".$miesiace[$miesiac]." ".$rok." roku.";
  125.  
  126.  
  127. }
  128. else{
  129. echo "Podaj date!";
  130. }
  131.  
  132. }
  133.  
  134. ?>
  135. </body>
  136. </html>




Ten post edytował viamarimar 10.11.2014, 19:04:21
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Aktualny czas: 6.10.2025 - 01:59