[php+mySQL] Zapytanie select count zwraca zły wynik

0

Cześć, oto mój kawałek kodu:

 $query = "SELECT COUNT(*) AS ilosc FROM users";
 $rows = mysql_query($query) or die(mysql_error());
 $result = mysql_fetch_assoc($rows);

I teraz zmienna result["ilosc"] zwraca mi 3, podczas, gdy powinna 4. Czemu tak się dzieje?
(mysql_num_rows też zwraca 3)</php>

0

Zapewne są 3 rekordy. To, że ostatni ma id 4 nie ma nic do ilości rekordów*.

*)O ile tak masz.

0
nav napisał(a)

Zapewne są 3 rekordy. To, że ostatni ma id 4 nie ma nic do ilości rekordów*.

*)O ile tak masz.

Są 4 rekordy - dlatego temat jest taki, a nie inny.

Dziwna jest sprawa, bo wczoraj pokazywało dobrze. Dzisiaj już nie.
Jeśli to samo zapytanie wykonuję w bazie(bezpośrednio) zwraca 4.

0
Juhas napisał(a)
nav napisał(a)

Zapewne są 3 rekordy. To, że ostatni ma id 4 nie ma nic do ilości rekordów*.

*)O ile tak masz.

Są 4 rekordy - dlatego temat jest taki, a nie inny.

Dziwna jest sprawa, bo wczoraj pokazywało dobrze. Dzisiaj już nie.
Jeśli to samo zapytanie wykonuję w bazie(bezpośrednio) zwraca 4.

Ja na twoim miejscu sprawdzilbym czy nie pomylilem tabel/baz, itp.

pozdrawiam
johny

0

może to samo co w phpMyAdmin:

[3.11] The number of records for InnoDB tables is not correct.
phpMyAdmin uses a quick method to get the row count, and this method only returns an approximate count in the case of InnoDB tables. See $cfg['MaxExactCount'] for a way to modify those results, but this could have a serious impact on performance.

może też zkeszowało wynik, jak otwierasz połączenie z bazą ?

0
Adamo napisał(a)

może to samo co w phpMyAdmin:

Ale tam pokazuje dobrze

może też zkeszowało wynik,

Hmmm, no to jest możliwe, chociaż mało prawdopowodbne. A jak się robiło, żeby strona nie była cache'owana? Coś z meta, ale nie pamiętam co...

jak otwierasz połączenie z bazą ?

mysql_pconnect()

z odpowiednimi argumentami

0

a może to właśnie z phpMyAdmin źle pokazuje - patrzysz na dane czy ilość
spróbuj nawiązać połączenie przez mysql_connect

0
Adamo napisał(a)

a może to właśnie z phpMyAdmin źle pokazuje - patrzysz na dane czy ilość
spróbuj nawiązać połączenie przez mysql_connect

phpMyAdmin dobrze pokazuje. Anyway znalazłem błąd, który wyniknął z mojego zmęczenia i głupoty ;)
Ale przy okazji - jak sprawić, żeby przeglądarka nie cachowała stron?

1 użytkowników online, w tym zalogowanych: 0, gości: 1