Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Pobieranie informacji o miesiącu
Forum PHP.pl > Forum > Przedszkole
mczlowiek
Witam mam taki oto problem,
Jak pobrać z tabeli gdzie data jest w formie 2008-06-25 i teraz chce utworzyc 3 kolumny gdzie po koleji znajowac sie bede dane z poprzednich miesiecy, tylko ma to być dynamiczne(czyli np jesli mamy czerwiec to potrzebuje dane z kwietnia i maja, jesli to bedzie grudzien to dane potrzebne sa z pazdziernika i listopada) ma to wygladac mniej wiecej tak:
mamy czerwiec

+----------+-----------+--------------+
|kwiecien....|.....maj......|......czerwiec...|
+----------+-----------+--------------+
|..dane z ...|...dane z ...|...dane z .......|
|..kwietnia..|..z maja.....|....czerwca.....|
+----------+-----------+--------------+

mam nadzieje ze w miare jasno to napisalem winksmiley.jpg
z gory dziekuje za odpowiedz
piotrooo89
  1. <?php
  2. $d1 = mktime(0,0,0, date('m')-2, date('d'), date('Y'));
  3. $date1 = strftime("%Y-%m-%d", $d1);
  4.  
  5. $d2 = mktime(0,0,0, date('m'), date('d'), date('Y'));
  6.  $date2 = strftime("%Y-%m-%d", $d2);
  7.  
  8. $sql = mysql_query("SELECT * FROM tab WHERE data BETWEEN '$d1' AND '$d2'";
  9. ?>


pisane z palca może nie działać
mczlowiek
jak na razie dziękuję... jak coś to uderzę do Ciebie.
Pozdrawiam i dziękuję!!!

  1. <?php
  2. $d1 = mktime(0,0,0, date('m')-2, date('d'), date('Y'));
  3. $date1 = strftime("%Y-%m-%d", $d1);
  4.  
  5. $d2 = mktime(0,0,0, date('m')+2, date('d'), date('Y'));
  6.  $date2 = strftime("%Y-%m-%d", $d2);
  7.  
  8.  
  9. $hist = mysql_fetch_array(mysql_query("SELECT * FROM typy WHERE data BETWEEN '$d1' AND '$d2'"));
  10. echo('<font face="verdana" size=1 color=red>'.$hist['spotkanie'].' </font>');
  11.  
  12. ?>

niestety nic nie wyswietla mimo ze dane (spotkanie) mam wprowadzone
piotrooo89
sory ja się walnąłem...

  1. <?php
  2. $hist = mysql_fetch_array(mysql_query("SELECT * FROM typy WHERE data BETWEEN '$date1' AND '$date2'"));
  3. ?>


tak ma być. wybacz
mczlowiek
mimo ze mam w tablicy 6 wierszy, ktore spelniaja te wyrazenie wyswietla sie tylko jeden ;(
piotrooo89
pętla while do wyświetlania wszystkich!

  1. <?php
  2. $sql = mysql_query("SELECT * FROM typy WHERE data BETWEEN '$date1' AND '$date2'");
  3. while($row = mysql_fetch_array($sql))
  4. {
  5. echo $row['spotkanie'];
  6. }
  7. ?>
mczlowiek
ogolnie chodzi mi zeby wyswietlal pelne miesiace od 1 do 31 a jesli bedzie data z 25 dniem tygodnia to pokaze (jak odejmie sobie -2 miesiace) wszystkie spotkania do 25 a nie z calego miesiaca
piotrooo89
to moim zdaniem powinieneś trosze pokombinować. możesz np na "sztywno" w miejscu gdzie jest dzień dodać np. 1. samo na pewno sie nie zrobi.
mczlowiek
chce wyswietlic bilans obecnego miesiaca, kod mam według wzoru:
  1. <?php
  2. $d1 = mktime(0,0,0, date('m'), date('1'), date('Y'));
  3. $date1 = strftime("%Y-%m-%d", $d1);
  4.  
  5. $d2 = mktime(0,0,0, date('m'), date('31'), date('Y'));
  6.  $date2 = strftime("%Y-%m-%d", $d2);
  7.  
  8. $sql = mysql_query("SELECT profit FROM typy WHERE data BETWEEN '$date1' AND '$date2'");
  9. $result=mysql_query($sql) or die(mysql_error());
  10. $row = mysql_fetch_array($result);
  11. echo array_sum($row);
  12. ?>

ale zwraca mi błąd:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Resource id #15' at line 1

Co zrobiłem źle?questionmark.gif
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.