Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Stronicowanie rekordów z bazy
Forum PHP.pl > Forum > PHP
RaVeno
Witam wszystkich,
Jestem początkujący ,więc na początku proszę o wyrozumiałość.

Próbuję napisać skrypt tak jak w temacie który stronicuje rekordy z bazy
Poniżej fragment kodu:
  1. $wykonaj=mysql_query("SELECT * FROM `logi`");
  2. $znaleziono=mysql_num_rows($wykonaj);
  3. if($znaleziono>$na_stronie) {
  4. $main .= 'Strona: ';
  5. for($i=0; $i<ceil($znaleziono/$na_stronie); $i++)
  6. $main .= '<a href="index.php?start='.($i*$na_stronie).'">'.($i+1).'</a> ';

Wszystko ładnie działa lecz nie do końca o to mi chodzi.
Załóżmy ,że w bazie mam kolumny: uzytkownik | data | punkty
np.
  1. uzytkownik | DATA | punkty
  2. 1 2010-04-14 23
  3. 2 2010-04-16 46
  4. 1 2010-04-16 73
  5. 1 2010-04-17 11
  6. 2 2010-04-18 32

I teraz nie wiem jak zrobić by dla każdego użytkownika zliczało jego dane, bo w tej chwili zlicza dla wszystkich
"SELECT * FROM `logi`"
A chcę by dla każdego z osobna zliczało liczbę rekordów i według tego stronicowało.

Pozdrawiam
Spawnm
poczytaj o 'where' oraz 'limit' w sql
RaVeno
czytałem trochę ale coś nie wychodzi mi
Daję
  1. "SELECT * FROM `logi` WHERE `uzytkownik` = ".$fetch['id']."

i wywala mi błąd
P4vl0
Kod
"SELECT * FROM `logi` WHERE `uzytkownik` = ".$fetch['id']

Pewnie przez cudzysłów i kropkę na końcu
pedro84
Cytat(RaVeno @ 18.04.2010, 21:27:07 ) *
czytałem trochę ale coś nie wychodzi mi
Daję
  1. "SELECT * FROM `logi` WHERE `uzytkownik` = ".$fetch['id']."

i wywala mi błąd


Jaki błąd?
RaVeno
Taki
Cytat
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/[...]
P4vl0
Sprawdź ten kod
  1. $result = mysql_query("SELECT * FROM 'logi' WHERE 'uzytkownik' = '".$fetch['id']."'");
  2. $num_rows = mysql_num_rows($result);
tehaha
spróbuj
  1. 1.
  2. "SELECT * FROM `logi` WHERE `uzytkownik` = '".$fetch['id']."'
RaVeno
Również i tak próbowałem lecz komunikat ten sam.
tehaha
a zrób
  1. #
  2. $result = mysql_query("SELECT * FROM 'logi' WHERE 'uzytkownik' = '".$fetch['id']."'") or die(mysql_error());
i tak na wszelki wypadek zapytam, czy Ty w ogóle przekazujesz zmienną $fetch['id'] ?
podgur
$result = mysql_query("SELECT * FROM `logi` WHERE `uzytkownik` = \"$fetch[id]\" ");
pedro84
Cytat(podgur @ 18.04.2010, 22:26:35 ) *
$result = mysql_query("SELECT * FROM `logi` WHERE `uzytkownik` = \"$fetch[id]\" ");


Przecież tutaj ma poprawne zapytanie...
$result = mysql_query("SELECT * FROM 'logi' WHERE 'uzytkownik' = '".$fetch['id']."'") or die(mysql_error());
podgur
A czy moje nie jest poprawne?... no właśnie:)
Pisałem tego posta wtedy kiedy tehaha (pierw upewniłem się : ) dlatego masz różnice czasu )


Bless
RaVeno
Sorki za nieobecność...
Nadal nie mogę dojść do tego.
Poniżej wrzucam cały kod może ułatwi całą sprawę. Musiałem pewnie coś przeoczyć.

[EDIT]
bim2
Wywal ten średnik na końcu.
RaVeno
O średnik na końcu tu nie chodziło tongue.gif

Dobra udało mi się dojść co i jak po dokładnej analizie kodu.
Problem: dwa razy była wykorzystana ta sama zmienna w wyniku czego dawała inną wartość niż powinna.

dzięki wszystkim którzy się fatygowali i próbowali pomóc smile.gif

Bless wam !
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.