Re: [PHP] Re: google style paginating

2003-08-22 Thread Rob Yelvington
The Pear Pager class works like a champeen, too.  It'll paginate results 
however you'd like it to.

~Rob

Chris W. Parker wrote:
Robert Cummings mailto:[EMAIL PROTECTED]
on Thursday, August 21, 2003 4:46 PM said:

Don't retrieve ALL the queries then
only display a subset. Otherwise what's the point of using the LIMIT
clause for conservation of resources?  The SELECT COUNT( * ) FROM
foo query is usually optimized to be extremely fast so the first
query is almost negligible in contrast to the second.


Heh... I've never really used COUNT() so I'll have to see how much it
speeds up my searching. :)
Good idea!

Chris.


--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


Re: [PHP] Re: google style paginating

2003-08-22 Thread Robert Cummings
IMHO a PEAR pager package sounds like a sledgehammer when all that's
needed is a hammer.

Cheers,
Rob.

On Fri, 2003-08-22 at 17:59, Rob Yelvington wrote:
 The Pear Pager class works like a champeen, too.  It'll paginate results 
 however you'd like it to.
 
 ~Rob
 
 
 Chris W. Parker wrote:
  Robert Cummings mailto:[EMAIL PROTECTED]
  on Thursday, August 21, 2003 4:46 PM said:
  
  
 Don't retrieve ALL the queries then
 only display a subset. Otherwise what's the point of using the LIMIT
 clause for conservation of resources?  The SELECT COUNT( * ) FROM
 foo query is usually optimized to be extremely fast so the first
 query is almost negligible in contrast to the second.
  
  
  Heh... I've never really used COUNT() so I'll have to see how much it
  speeds up my searching. :)
  
  
  Good idea!
  
  Chris.

-- 
.-.
| Worlds of Carnage - http://www.wocmud.org   |
:-:
| Come visit a world of myth and legend where |
| fantastical creatures come to life and the  |
| stuff of nightmares grasp for your soul.|
`-'

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



[PHP] Re: google style paginating

2003-08-21 Thread John Ryan
just split up your total number of results ($num_rows) by the results per
page (10, i think) and create a for loop to loop from page1 to pagex,
creating a link with offset for each one.

simple.
Ted Conn [EMAIL PROTECTED] wrote in message
news:[EMAIL PROTECTED]
 Hi I am new to this newsgroup and I plan on replying to all the posts I
can
 for now... but Id like to start out by asking a question. I am trying to
 paginate my sql results in 10 by 10, which I have been able to do no
 problem. but what I want to do is have the pages layed out in google style
 with (1)(2)(3)(4) etc etc and each one is clickeable that will take you to
 that page. I'll show you the code I am using now for next and back
 buttons...



 //located at top of page
 ?php
 include(include/conex.php);
 $link=Conectarse();
 ?

 //start of body, this verifies that so is numeric, divisible by 10, and a
 valid number
 ?php
 $q=SELECT id FROM tblNoticias ORDER BY id ;
 $result=MYSQL_QUERY($q,$link);
 $num_rows=(MYSQL_NUM_ROWS($result));
 if ( isset($_GET['so'])  is_numeric($_GET['so']) )
 {
  if ( ($_GET['so']  $num_rows) || ($_GET['so']  0) )
   $so='0';
  else
  {
   if ($_GET['so'] % 10)
$so='0';
   else
$so=$_GET['so'];
  }
 }
 else
  $so='0';
 ?

 //return results

 ?php
 $q=SELECT id,titulo,texto,img1_data FROM tblNoticias ORDER BY id DESC
LIMIT
 $so,10;
 $result=(MYSQL_QUERY($q,$link));
 while ($row=(MYSQL_FETCH_ARRAY($result))){
 ?

 // next and back buttons

 ?PHP

   if ( $so =10)
   {
   $sortback= $so-10;
   echo A HREF=\noticias_historia.php?so=$sortback\
class=\mainText\
 Atras/A ;
   }
   ?
 ?PHP

  $sortforth=$so + 10;
   $existencias=MYSQL_QUERY(SELECT id FROM tblNoticias LIMIT
 $sortforth,10,$link);
   $existencias=MYSQL_NUM_ROWS($existencias);
   if ( $existencias  0 )
   echo  A HREF =\noticias_historia.php?so=$sortforth\
 class=\mainText\ Siguiente  /A;
?


 DID I PUT WAY TO MUCH CODE?? Sorry, and I apreciate your help.

 How can I implement the google style paging into this code?

 Thank you...




 Ted Conn Lider de Proyectos [EMAIL PROTECTED] Scinet México S.A. de C.V.
 +52 (222) 294-05-95 al 97 Sin costo: 01-8000-DOTCOM Puebla · DF ·
Monterrey
 www.scinet.com.mx





-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Re: [PHP] Re: google style paginating

2003-08-21 Thread Robert Cummings
Ummm I wouldn't do what these guys suggest (at least not all of it)...
perform two queries, one counting the total number of returns the other
to actually get the subset. Don't retrieve ALL the queries then only
display a subset. Otherwise what's the point of using the LIMIT clause
for conservation of resources? The SELECT COUNT( * ) FROM foo query is
usually optimized to be extremely fast so the first query is almost
negligible in contrast to the second.

Cheers,
Rob.


On Thu, 2003-08-21 at 18:52, John Ryan wrote:
 just split up your total number of results ($num_rows) by the results per
 page (10, i think) and create a for loop to loop from page1 to pagex,
 creating a link with offset for each one.
 
 simple.
 Ted Conn [EMAIL PROTECTED] wrote in message
 news:[EMAIL PROTECTED]
  Hi I am new to this newsgroup and I plan on replying to all the posts I
 can
  for now... but Id like to start out by asking a question. I am trying to
  paginate my sql results in 10 by 10, which I have been able to do no
  problem. but what I want to do is have the pages layed out in google style
  with (1)(2)(3)(4) etc etc and each one is clickeable that will take you to
  that page. I'll show you the code I am using now for next and back
  buttons...
 
 
 
  //located at top of page
  ?php
  include(include/conex.php);
  $link=Conectarse();
  ?
 
  //start of body, this verifies that so is numeric, divisible by 10, and a
  valid number
  ?php
  $q=SELECT id FROM tblNoticias ORDER BY id ;
  $result=MYSQL_QUERY($q,$link);
  $num_rows=(MYSQL_NUM_ROWS($result));
  if ( isset($_GET['so'])  is_numeric($_GET['so']) )
  {
   if ( ($_GET['so']  $num_rows) || ($_GET['so']  0) )
$so='0';
   else
   {
if ($_GET['so'] % 10)
 $so='0';
else
 $so=$_GET['so'];
   }
  }
  else
   $so='0';
  ?
 
  //return results
 
  ?php
  $q=SELECT id,titulo,texto,img1_data FROM tblNoticias ORDER BY id DESC
 LIMIT
  $so,10;
  $result=(MYSQL_QUERY($q,$link));
  while ($row=(MYSQL_FETCH_ARRAY($result))){
  ?
 
  // next and back buttons
 
  ?PHP
 
if ( $so =10)
{
$sortback= $so-10;
echo A HREF=\noticias_historia.php?so=$sortback\
 class=\mainText\
  Atras/A ;
}
?
  ?PHP
 
   $sortforth=$so + 10;
$existencias=MYSQL_QUERY(SELECT id FROM tblNoticias LIMIT
  $sortforth,10,$link);
$existencias=MYSQL_NUM_ROWS($existencias);
if ( $existencias  0 )
echo  A HREF =\noticias_historia.php?so=$sortforth\
  class=\mainText\ Siguiente  /A;
 ?
 
 
  DID I PUT WAY TO MUCH CODE?? Sorry, and I apreciate your help.
 
  How can I implement the google style paging into this code?
 
  Thank you...
 
 
 
 
  Ted Conn Lider de Proyectos [EMAIL PROTECTED] Scinet México S.A. de C.V.
  +52 (222) 294-05-95 al 97 Sin costo: 01-8000-DOTCOM Puebla · DF ·
 Monterrey
  www.scinet.com.mx
 
 
 
 
 
 -- 
 PHP General Mailing List (http://www.php.net/)
 To unsubscribe, visit: http://www.php.net/unsub.php
 
 
-- 
.-.
| Worlds of Carnage - http://www.wocmud.org   |
:-:
| Come visit a world of myth and legend where |
| fantastical creatures come to life and the  |
| stuff of nightmares grasp for your soul.|
`-'

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



RE: [PHP] Re: google style paginating

2003-08-21 Thread Chris W. Parker
Robert Cummings mailto:[EMAIL PROTECTED]
on Thursday, August 21, 2003 4:46 PM said:

 Don't retrieve ALL the queries then
 only display a subset. Otherwise what's the point of using the LIMIT
 clause for conservation of resources?  The SELECT COUNT( * ) FROM
 foo query is usually optimized to be extremely fast so the first
 query is almost negligible in contrast to the second.

Heh... I've never really used COUNT() so I'll have to see how much it
speeds up my searching. :)


Good idea!

Chris.

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php