Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Zliczanie wyników z zapytania
Forum PHP.pl > Forum > Przedszkole
dopal
Witam

Doszedłem do pewnego etapu w otrzymaniu odpowiednich wyników, ale utknąłem.
Proszę o jakieś wskazówki jak dalej ruszyć, by otrzymać odpowiedni wynik.
We fragmencie kodu zamieszczam dokładny opis.

  1. <tr><td width="10%" align="left"><b>&nbsp;</b></td><td width="63%" align="left">Kobiety ogółem:</td><td width="10%" align="center"><b><?php
  2.  
  3. $pytanie8a="SELECT DISTINCT DADWNR, DADWNZ, DADWIM, DADWPS, DADWA1, DADWA2, DADWKP, DAPLNR, DASDSK, DAPLEC, DADWUR FROM DAWCY
  4. INNER JOIN ODDANIA on DADWNR=ODDWNR AND DAPLNR=ODPLNR
  5. WHERE ODDNDT Between '".$czas1."' And '".$czas2."' AND ODDNKD='E5' AND DAPLEC='K'
  6. OR ODDNDT Between '".$czas1."' And '".$czas2."' AND ODDNKD='EA' AND DAPLEC='K'
  7. OR ODDNDT Between '".$czas1."' And '".$czas2."' AND ODDNKD='EK' AND DAPLEC='K'
  8. OR ODDNDT Between '".$czas1."' And '".$czas2."' AND ODDNKD='EP' AND DAPLEC='K'";
  9.  
  10. //zapytanie zwraca tylko kobiety zarejestrowane pomiędzy np. 2013-01-01 a 2013-01-31
  11.  
  12. $result8a = odbc_exec($connect, $pytanie8a) or die( odbc_error());
  13. $ilosc8a = odbc_num_rows($result8a);
  14. //tutaj otrzymuję wynik np. 150
  15.  
  16. //niestety w bazie mam wpisaną datę urodzenia osoby, a potrzebny mi jest jej wiek ( nie ma mozliwości ingerencji w bazę)
  17. while(odbc_fetch_row($result8a))
  18. {
  19.  
  20. $data_ur = odbc_result($result8a, 11); // 11 to pozycja w zapytaniu, gdzie jest data urodzenia
  21.  
  22. $os_rok = substr($data_ur, 0, 4); //z daty urodzenia wyciągam rok
  23.  
  24. $rok=date('Y'); //aktualny rok
  25. $wiek=$rok-$os_rok; //odejmuję rok z daty urodzenia od aktualnego i otrzymuję wiek osoby
  26. }
  27.  
  28. // teraz chciałbym wyfiltrować te osoby, które mieszczą się w takich przedziałach wiekowych: 18-24, 25-31, 32-40, 41-65 i powyżej 65
  29. //nie wiem jak się do tego zabrać, jak zliczyć osoby w danym przedziale wiekowym
  30.  
  31. if ($wiek >= 18) & ( $wiek <=24) {
  32. }
  33.  
  34. //poniżej mają być wyświetlone wyniki z każdego przedziału wiekowego np.
  35. echo $zakres1; ?>
  36. </b></td></tr>
nospor
Cytat
teraz chciałbym wyfiltrować te osoby, które mieszczą się w takich przedziałach wiekowych: 18-24, 25-31, 32-40, 41-65 i powyżej 65

//nie wiem jak się do tego zabrać, jak zliczyć osoby w danym przedziale wiekowym
yyy.....aa..... ale w czym problem? Nie umiesz zmiennej $ilosc18_24 zwiekszac o jeden? Analogicznie pozostałych zmiennych?
Oczywiscie masz to robic w petli, gdzie pobierasz kobitki
dopal
Właśnie nie wiem czy mam jakieś totalne zaćmienie i głowa mi wysiada, ale na serio nie wiem jak to zliczyć, jak ją zwiększyć o 1?
nospor
facepalmxd.gif

Jak zwiekszyc o jeden?
$ilosc18_24++;

Tylko masz to robic w petli co pobierasz kobikti i liczysz zmienną $wiek...
dopal
Pewnie mnie zbluzgasz:)
ale jak możesz to napisz jak by to miało wyglądać, czy if jest mi potrzebny?
nospor
Zamiast pisać posta za postem co minute, to moze poprostu pomysl nad tym co ci napisałem, co? No nie rob z siebie niewiadomo jakiej ofiary losu. Pomysl....

Tak, IF ci jest potrzebny by wiedziec którą zmienną masz zwiększać. Przecież masz kilka tych przedziałów, co nie?
dopal
Ok, zrobiłem. Dzięki.
Za dużo prochów...znaczy antybiotyku i nie myśle. sciana.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.