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

Odpowiedz Nowy wątek
2006-09-08 22:42
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>

Pozostało 580 znaków

2006-09-08 22:50
nav
0

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

*)O ile tak masz.


utf-8 rlz! ٩(ಥ_ಥ)۶

Pozostało 580 znaków

2006-09-08 22:55
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.

Pozostało 580 znaków

2006-09-08 23:02
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


You need to learn how to walk
before you can run

Pozostało 580 znaków

2006-09-08 23:53
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ą ?


Dwie zasady gwarantujące sukces:
1. Nigdy nie mów nikomu wszystkiego<span style="color: white">

Pozostało 580 znaków

2006-09-09 12:34
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

Pozostało 580 znaków

2006-09-09 14:16
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


Dwie zasady gwarantujące sukces:
1. Nigdy nie mów nikomu wszystkiego<span style="color: white">

Pozostało 580 znaków

2006-09-09 17:06
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?

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

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