Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Problem ze zliczeniem rekordów z bazy
Forum PHP.pl > Forum > Przedszkole
bubusek
Witam mam problem z poprawnym zliczeniem rekordów z bazy:

  1. $wynik3 = mysql_query("SELECT count(ile) as ile FROM xif WHERE czas >= '$trwa' AND kraj='Austria' OR kraj='Belgium' ");
  2. $wiersz3 = mysql_fetch_assoc($wynik3);
  3. $ile3 = $wiersz3['ile'];
  4. $nombre_format_francais3 = number_format($ile3, 0, ',', ' ');


Wynik dostaję jakby z pominięciem pierwszego warunku
A chcę by działało to tak ze najpierw z wszyskich rekordów były pominiane rekordy których czas jest mniejszy $trwa a następnie by z tych jakie pozostały zliczone były tylko te które jako kraj maja wpisane Austria i Belgium.

Jakieś sugestie co źle ?
CuteOne
jeżeli chcesz, żeby były POMIJANE to czas < '$trwa'
bubusek
Pomyłka tam była już poprawiłem, miejsze ma pomijać. Ten zapis jest dobry ale w ogóle nie wykonuje mi tego warunku z czasem.

Natomiast jeśli użyję takiego kodu:

  1. $wynik3 = mysql_query("SELECT count(ile) as ile FROM xif WHERE czas >= '$trwa' ");
  2. $wiersz3 = mysql_fetch_assoc($wynik3);
  3. $ile3 = $wiersz3['ile'];
  4. $nombre_format_francais3 = number_format($ile3, 0, ',', ' ');


Wynik daje prawidłowy tak samo jeśli mam kod taki:

  1. $wynik3 = mysql_query("SELECT count(ile) as ile FROM xif WHERE czas >= '$trwa' AND kraj='Austria' ");
  2. $wiersz3 = mysql_fetch_assoc($wynik3);
  3. $ile3 = $wiersz3['ile'];
  4. $nombre_format_francais3 = number_format($ile3, 0, ',', ' ');


ale gdy mam te trzy warunki i połączenie z AND i OR to już nie dostaje takich wyników jak trzeba
CuteOne
Napisz mi:
- przykładowy czas z tej kolumny "czas"
- przykładowy czas ze zmiennej $trwa

edit: hmmm a czy COUNT nie musi występować w parze z GROUP BY.. podpisz or die(mysql_error()):
$wynik3 = mysql_query("SELECT count(ile) as ile FROM xif WHERE czas >= '$trwa' AND (kraj='Austria' OR kraj='Belgium')") or die(mysql_error());

edit2: dodaj też nawisy "AND (kraj='Austria' OR kraj='Belgium')"
bubusek
or die(mysql_error()); nie zwraca żadnego błedu.

natomiast () chyba to jest to czego brakowało (wynik wydaje się być już zdecydowanie bliżej prawidłowego) sprawdzę zaraz jeszcze dokładnie czy teraz wszystko gra i dam znać oraz odpowiednio nagrodzę smile.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.