Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Pager
Forum PHP.pl > Forum > Przedszkole
Zeo
Fatal error: Cannot instantiate non-existent class: pager in c:\Windows\render.php on line 9


kod:

  1. <?php
  2.  
  3.  mysql_connect('localhost', 'xxt', 'xx');
  4.  mysql_select_db('xxx');
  5.  $sql = 'select count(*) from profil';
  6.  $result = mysql_query($sql);
  7.  $row = mysql_fetch_array($result);
  8.  $recordsCount = $row[5];
  9.  $pager = new Pager('id');
  10.  $pager->SetTotalRecords($recordsCount);
  11.  $renderPager = $pager->Render(true);
  12.  $start = $pager->GetIndexRecordStart();
  13.  $end = $pager->GetIndexRecordEnd();
  14.  $sql = 'select * from profil limit '.$start.','.($end - $start + 1);
  15.  echo $renderPager ;
  16.  ?>


Pager.class.php jest w tym samym katalogu co ten plik, niemam pojęcia czemu to nie działa sciana.gif
nospor
no ale musisz te klase dolaczyc:
  1. <?php
  2. require_once('Pager.class.php');
  3. ?>
Zeo
Kod
Parse error: parse error, expecting `T_OLD_FUNCTION' or `T_FUNCTION' or `T_VAR' or `'}'' in c:\Windows\Pager.class.php on line 34


Już wcześniej robiłem require, ale jak widać to nie to.
Cysiaczek
Bo masz php 4. Zainstaluj php 5.
nospor
Nie musi instalowac php5. Sa tam tez wersje pagera dla php4
Zeo
Dobra, ruszyło na php5, poprawiłem trochę kod jednak po uruchomieniu skryptu pokazuje się pusta strona!
oto jak wygląda kod:
  1. <?php
  2.  include_once('Pager.class.php');
  3.  mysql_connect('localhost', 'xxt', 'xxx');
  4.  mysql_select_db('xxx');
  5.  $sql = 'select * from profil';
  6.  $result = mysql_query($sql);
  7.  $row = mysql_fetch_array($result);
  8.  $recordsCount = $row[10];
  9.  $pager = new Pager('id');
  10.  $pager->SetTotalRecords($recordsCount);
  11.  $pager->Make(true);
  12.  $renderPager = $pager->Render();
  13.  $start = $pager->GetIndexRecordStart();
  14.  $end = $pager->GetIndexRecordEnd();
  15.  $sql = 'select * from profil limit '.$start.','.($end - $start + 1);
  16.  echo $renderPager ;
  17.  ?>
nospor
pager generuje strony jesli jest ich wiecej niz jedna. jesli wiec maszy tylko rekordow na jedna strone to pager nic nie wygeneruje.

Pozatym byloby milo jesli oprocz pagera wyswietlalbys swoje wyniki, czego na chwile obecna nie robisz smile.gif

ps:
  1. <?php
  2. $sql = 'select * from profil';
  3.  $result = mysql_query($sql);
  4.  $row = mysql_fetch_array($result);
  5.  $recordsCount = $row[10];
  6. ?>

hmmm, w pierwszym rekordzie z tabeli profil w polu nr 10 trzymasz liczbe rekordow? dziwne, bardzo dziwne....
Zeo
takie coś zrobiłem:
  1. <?php
  2.  include_once('Pager.class.php');
  3.  mysql_connect('localhost', 'xx', 'xxl');
  4.  mysql_select_db('xxxl');
  5.  $sql = 'select count(*) from profil';
  6.  $result = mysql_query($sql);
  7.  $row = mysql_fetch_array($result);
  8.  $recordsCount = $row[0];
  9.  $pager = new Pager('id');
  10.  $pager->SetTotalRecords($recordsCount);
  11.  $pager->Make(true);
  12.  $renderPager = $pager->Render();
  13.  $start = $pager->GetIndexRecordStart();
  14.  $end = $pager->GetIndexRecordEnd();
  15.  $sql = 'select * from profil limit '.$start.','.($end - $start + 1);
  16.  $result = mysql_query($sql);
  17.  $row = array();
  18. while ($row = mysql_fetch_assoc($result)){
  19. $res[] = $row;
  20.  
  21.  }
  22.  echo $renderPager ;
  23.  ?>


Tylko co trzeba tu dopisać że wyświetliły mi sie jakieś wartości nad tym pagerem?
Powiedzmy że tak wygląda struktura mojej bazy:
Id,imie,nazwisko,email,opis
baza ma 40rekordów.
nospor
Pozwole sobie wyodrebnic te posty z mego tematu na przedszkole bo to juz lekka przesada smile.gif

Jak wyswietlic rekordy?
  1. <?php
  2. while ($row = mysql_fetch_assoc($result)){
  3. $res[] = $row;
  4. print_r($row);
  5.  
  6.  }
  7. ?>

I juz sie wyswietla. Ty sobie zrob ladniej.
Zeo
dobra dzięki wiem o co chodzi, dalej już sobie poradzę 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.