Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Mysql][PHP] Wyświetlanie wyników z przedziału datowego.
Rewil
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 0
Dołączył: 19.09.2009

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


Witam.

Mam date w mysql'u w formie:
(d-m-Y) np=> 2009-10-08

Następnie mam okres czasowy:
  1. $data_start = date('d.m.Y', $odejmdzien);
  2. $data_koniec = date('d.m.Y', $dodajdzien);


I potrzebuje wyświetlić wszystkie id rekordów których data znajduje się w tym przedziale.

  1. $czas1 = mktime($data_start); 'Tutaj zamienia czas na sekundy od roku 1970. (?)
  2. $czas2 = mktime($data_koniec);
  3. $czasteraz = time();

Na podstawie tego otrzumujemy taki wynik:
1257030000 01.11.2009
1257548400 07.11.2009
1257433483 Czas teraz.

Jak już mamy przedział czas na zapytanie:
  1. $zapytanie = "SELECT hourssumamin FROM time_data WHERE $czas1 < $czasteraz && $czas2 > $czasteraz && user_id = $user_id";
  2. $idzapytania = mysql_query($zapytanie);
  3. $test = mysql_fetch_array($idzapytania);
  4. echo $test[0];

I teraz powstaje takie pytanie, czy mogę robić takie działania na zapytaniu jeżeli w bazie mam format daty podany w d-m-Y, a przedział w jakim sprawdzam tą date jest w Unixowym?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Rewil
post
Post #2





Grupa: Zarejestrowani
Postów: 175
Pomógł: 0
Dołączył: 19.09.2009

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


Twoje słowa dały mi do myślenia i wiem że do tego źle podszedłem. I teraz kombinuje w drugą stronę, jak to koń (IMG:style_emoticons/default/biggrin.gif) W razie problemów jeszcze napisze, ale na razie spróbuje sam. Oczywiście leci jak najbardziej zasłużony "pomógł".

No wszystko ładnie pięknie, ale zrobił mi się jakiś nowy błąd eh...
  1. $user_id = $urow['user_id'];
  2. $zapytanie = "SELECT `hourssumamin` FROM `time_data` WHERE data_date >= '$start_date' and data_date <= '$end_date' and user_id = $user_id";
  3. $idzapytania = mysql_query($zapytanie);
  4. $zal = mysql_fetch_array($idzapytania);
  5. $ilejest = mysql_num_rows($idzapytania);
  6.  
  7.  
  8. while ($pierwsze = mysql_fetch_row($idzapytania))
  9. {
  10. for($i = 0; $i <= $ilejest; $i++){
  11. echo $pierwsze[$i];
  12. }
  13. echo "o";
  14.  
  15. }
  16. echo "[".$ilejest."]";
  17.  
  18.  
  19. ?>


Dostaje (Dla przykładu):
423o175o237o61o110o411o[7]
[1]

Czyli zawsze zjada mi jeden wpis, natomiast po wyliczeniu w mysql_num_rows ilość wpisów się zgadza.
Coś przeoczyłem w pętli, czy błąd tkwi znów gdzieś indziej? Any Ideas?

Ten post edytował Rewil 6.11.2009, 18:09:52
Powód edycji: [Ociu]: Dodałem bbCode
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: 10.10.2025 - 18:24