Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze stronicowaniem danych z mysql
chormi
post
Post #1





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 28.09.2007

Ostrzeżenie: (10%)
X----


witam długo szukałem skryptu stronicowania danych z mysql ale kiedy znalazłem strasznie się zawiodłem bowiem generowane przez niego linki nie prowadzą do kolejnych stron tylko do tej samej 1 strony. (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

oto skrypt:

Kod
<?php

//Połączenie z mysql i wybranie bazy
$link = mysql_connect('localhost',**********','**************');
mysql_select_db('**********',$link);

require_once('funkcje.php');

//Domyślne wartości, odpowiednio liczby rekordów na strone i przesunięcia
$count=5;
$offset=0;
  
//Pobranie danych z $_GET jezsli ustawione
if(isset($_GET['count']))$count = $_GET['count'];
if(isset($_GET['offset']))$offset = $count*$_GET['offset']; //numer strony
  
//Pobranie liczby rekordów
$sql = 'Select count(*) from shoutbox';
$result = mysql_query($sql,$link);
$r = mysql_fetch_array($result);
//Liczba stron, uĹźycie ceil - zaokrąglenie w górę, w celu zapewnienia, Ĺźe Ĺźadna strona się nie straci
$pages = ceil($r[0]/$count);
  
//Pobranie odpowieniej paczki
$sql = 'Select * from shoutbox Limit '.$count.' offset '.$offset.';';
$result = mysql_query($sql,$link);
  
//Początek tabeli

  
//Pętla po wszystkich rekordach
while(($row=mysql_fetch_array($result))!=NULL){

echo emotki("<img src='gfx/user.gif'><span style='font-family : Verdana, Arial, Helvetica, sans-serif;font-size : 11px;'><b>$row[user]:</b><img src='gfx/www.gif' alt=".$row['strona']."><img src='gfx/status.gif' alt=".$row['gadu'].">: $row[wpis]</span><hr color='#000000' style='border-style: dashed;'>");

}
echo "Pozostałe strony z wpisami:<br><hr color='#000000'>";
//Pętla po stronach
for($i=1;$i<$pages;$i++){
//jeśli obecna strona, nie twórz linku do strony
if($i*$count==$offset){
echo ' '.$i.' ';
}else{

echo '<a href="index.php??count='.$count.'&offset='.$i.'"> '.$i.' </a>'; }
}
}
?>


z góry THX
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
chormi
post
Post #2





Grupa: Zarejestrowani
Postów: 26
Pomógł: 0
Dołączył: 28.09.2007

Ostrzeżenie: (10%)
X----


bo te skrypty są zbyt złożone i byłyby zbyt trudne to adaptacji na potrzeby mojej strony ale

znalazłem jeszcze coś takiego

Kod
<?php
$page=$_REQUEST['page'];
$ile=5;
if($con=mysql_connect('localhost','********','*******'))
{
mysql_select_db('*********');
$zapytanie=("SELECT wpis FROM shoutbox LIMIT ".($page*$ile).", 3");
$wykonaj=mysql_query($zapytanie);
   while($wiersz=mysql_fetch_array($wykonaj))
   {
  
   echo emotki("<img src='gfx/user.gif'><span style='font-family : Verdana, Arial, Helvetica, sans-serif;font-size : 11px;'><b>$row[user]:</b><img src='gfx/www.gif' alt=".$row['strona']."><img src='gfx/status.gif' alt=".$row['gadu'].">: $row[wpis]</span><hr color='#000000' style='border-style: dashed;'><br>");

   }


list($wszystkich)=mysql_fetch_row(mysql_db_query('porcjowanie',"SELECT count(*) FROM `shoutbox`"));
$podstron=ceil($wszystkich/$ile-1);
if ($page>0) echo "<a href=porcjowanie.php?page=".($page-1).">Poprzednia</a>"; else
echo "Poprzednia";
for($x=0;$x<=$podstron;$x++)
   {
    
      if ($x==$page) echo "".($x+1).""; else echo "<a href=porcjowanie.php?page=$x>".($x+1)." </a>";
   }
if ($page<$podstron) echo "<a href=porcjowanie.php?page=".($page+1).">Następna</a>";
else echo "Następna";
}
?>


ale wywala mi:

Parse error: syntax error, unexpected T_STRING in /home/freehost/g/r/grypsy/www/monit2.php on line 17

a 17 linijka to:

Kod
$zapytanie=("SELECT wpis FROM shoutbox LIMIT ".($page*$ile).", 3");


Ten post edytował chormi 9.02.2008, 19:21:33
Go to the top of the page
+Quote Post
em1X
post
Post #3





Grupa: Zarejestrowani
Postów: 984
Pomógł: 41
Dołączył: 16.03.2002
Skąd: Płock

Ostrzeżenie: (0%)
-----


Cytat(chormi @ 9.02.2008, 17:47:09 ) *
bo te skrypty są zbyt złożone i byłyby zbyt trudne to adaptacji na potrzeby mojej strony ale


Proszę Cię. To raczej Twój kod jest złożony i trudny. Wynikiem jest to, że nie potrafisz się nawet we własnym kodzie odnaleźć.
Co tu jest trudnego?

  1. <?php
  2. $datagrid->bind($dataobject, $datagridOptions);
  3.  
  4. /* Get a reference to the Renderer object */
  5. $renderer =& $datagrid->getRenderer();
  6.  
  7. /* Get and output HTML links */
  8. $pagingHtml = $renderer->getPaging();
  9. echo "<p>Pages : $pagingHtml</p>";
  10.  
  11. /* Render the table */
  12. $datagrid->render();
  13. ?>


Ten post edytował em1X 10.02.2008, 15:36:09
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 23:34