| | |
Paging Problem
Please support our PHP advertiser: PostgreSQL or MySQL? Compare and contrast the two most popular open source databases
![]() |
•
•
Join Date: Aug 2007
Posts: 199
Reputation:
Solved Threads: 0
Hello everybody,
I found paging code from www.plus2net.com, but when I implemented there is a problem with $this variable and the error is:
"Fatal error: Cannot re-assign $this in C:\wamp\www\Paging\php_paging.php on line 33"
This is the code:
I found paging code from www.plus2net.com, but when I implemented there is a problem with $this variable and the error is:
"Fatal error: Cannot re-assign $this in C:\wamp\www\Paging\php_paging.php on line 33"
This is the code:
PHP Syntax (Toggle Plain Text)
<?php //**************************************************************************** ////////////////////////Downloaded from www.plus2net.com ////////////////////////////////////////// /////////////////////// Visit www.plus2net.com for more such script and codes. //////// Read the readme file before using ///////////////////// //////////////////////// You can distribute this code with the link to www.plus2net.com /// ///////////////////////// Please don't remove the link to www.plus2net.com /// ////////////////////////// //***************************************************************************** ?> <!doctype html public "-//w3c//dtd html 3.2//en"> <html> <head> <title>Plus2net.com paging script in PHP</title> <meta name="GENERATOR" content="Arachnophilia 4.0"> <meta name="FORMATTER" content="Arachnophilia 4.0"> </head> <body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000"> <?php require "config.php"; // All database details will be included here $page_name="php_paging.php"; // If you use this code with a different page ( or file ) name then change this if(!isset($start)) { // This variable is set to zero for the first page $start = 0; } $eu = ($start -0); $limit = 2; // No of records to be shown per page. $this = $eu + $limit; $back = $eu - $limit; $next = $eu + $limit; /////////////// WE have to find out the number of records in our table. We will use this to break the pages/////// $query2=" SELECT * FROM student_adv "; $result2=mysql_query($query2); echo mysql_error(); $nume=mysql_num_rows($result2); /////// The variable nume above will store the total number of records in the table//// /////////// Now let us print the table headers //////////////// $bgcolor="#f1f1f1"; echo "<TABLE width=50% align=center cellpadding=0 cellspacing=0> <tr>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>ID</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Name</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Class</font></td>"; echo "<td bgcolor='dfdfdf'> <font face='arial,verdana,helvetica' color='#000000' size='4'>Mark</font></td></tr>"; ////////////// Now let us start executing the query with variables $eu and $limit set at the top of the page/////////// $query=" SELECT * FROM student_adv limit $eu, $limit "; $result=mysql_query($query); echo mysql_error(); //////////////// Now we will display the returned records in side the rows of the table///////// while($noticia = mysql_fetch_array($result)) { if($bgcolor=='#f1f1f1'){$bgcolor='#ffffff';} else{$bgcolor='#f1f1f1';} echo "<tr >"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[id]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[name]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[class]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[mark]</font></td>"; echo "</tr>"; } echo "</table>"; ////////////////////////////// End of displaying the table with records //////////////////////// ///// Variables set for advance paging/////////// $p_limit=8; // This should be more than $limit and set to a value for whick links to be breaked if(!isset($p_f)){$p_f=0;} $p_fwd=$p_f+$p_limit; $p_back=$p_f-$p_limit; //////////// End of variables for advance paging /////////////// /////////////// Start the buttom links with Prev and next link with page numbers ///////////////// echo "<table align = 'center' width='50%'><tr><td align='left' width='20%'>"; if($p_f<>0){print "<a href='$page_name?start=$p_back&p_f=$p_back'><font face='Verdana' size='2'>PREV $p_limit</font></a>"; } echo "</td><td align='left' width='10%'>"; //// if our variable $back is equal to 0 or more then only we will display the link to move back //////// if($back >=0 and ($back >=$p_f)) { print "<a href='$page_name?start=$back&p_f=$p_f'><font face='Verdana' size='2'>PREV</font></a>"; } //////////////// Let us display the page links at center. We will not display the current page as a link /////////// echo "</td><td align=center width='30%'>"; for($i=$p_f;$i < $nume and $i<($p_f+$p_limit);$i=$i+$limit){ if($i <> $eu){ $i2=$i+$p_f; echo " <a href='$page_name?start=$i&p_f=$p_f'><font face='Verdana' size='2'>$i</font></a> "; } else { echo "<font face='Verdana' size='4' color=red>$i</font>";} /// Current page is not displayed as link and given font color red } echo "</td><td align='right' width='10%'>"; ///////////// If we are not in the last page then Next link will be displayed. Here we check that ///// if($this < $nume and $this <($p_f+$p_limit)) { print "<a href='$page_name?start=$next&p_f=$p_f'><font face='Verdana' size='2'>NEXT</font></a>";} echo "</td><td align='right' width='20%'>"; if($p_fwd < $nume){ print "<a href='$page_name?start=$p_fwd&p_f=$p_fwd'><font face='Verdana' size='2'>NEXT $p_limit</font></a>"; } echo "</td></tr></table>"; ?> <center><a href='http://www.plus2net.com'>PHP SQL HTML free tutorials and scripts</a></center> </body> </html>
It's because
$this is a reserved word used with classes to reference the current object. For example php Syntax (Toggle Plain Text)
class TestClass { var $blah; function setBlah($input) { $this->blah = $input; } }
GCS d- s+ a-->? C++(++++) UL+++ P+>+++ L+++ E--- W+++
N+ o K w++(---) O? !M- V PS+>++ PE+ Y+ PGP !t- 5? X- R tv+
b+>++ DI+ D G++>+++ e+ h+>++ r y+
PMs asking for help will not be answered, post on the forums. That's what they're there for.
N+ o K w++(---) O? !M- V PS+>++ PE+ Y+ PGP !t- 5? X- R tv+
b+>++ DI+ D G++>+++ e+ h+>++ r y+
PMs asking for help will not be answered, post on the forums. That's what they're there for.
try this:
PHP Syntax (Toggle Plain Text)
<?php //**************************************************************************** ////////////////////////Downloaded from www.plus2net.com ////////////////////////////////////////// /////////////////////// Visit www.plus2net.com for more such script and codes. //////// Read the readme file before using ///////////////////// //////////////////////// You can distribute this code with the link to www.plus2net.com /// ///////////////////////// Please don't remove the link to www.plus2net.com /// ////////////////////////// //***************************************************************************** ?> <!doctype html public "-//w3c//dtd html 3.2//en"> <html> <head> <title>Plus2net.com paging script in PHP</title> <meta name="GENERATOR" content="Arachnophilia 4.0"> <meta name="FORMATTER" content="Arachnophilia 4.0"> </head> <body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000"> <?php require "config.php"; // All database details will be included here $page_name="php_paging.php"; // If you use this code with a different page ( or file ) name then change this if(!isset($start)) { // This variable is set to zero for the first page $start = 0; } $eu = ($start -0); $limit = 2; // No of records to be shown per page. $p = $eu + $limit; $back = $eu - $limit; $next = $eu + $limit; /////////////// WE have to find out the number of records in our table. We will use this to break the pages/////// $query2=" SELECT * FROM student_adv "; $result2=mysql_query($query2); echo mysql_error(); $nume=mysql_num_rows($result2); /////// The variable nume above will store the total number of records in the table//// /////////// Now let us print the table headers //////////////// $bgcolor="#f1f1f1"; echo "<TABLE width=50% align=center cellpadding=0 cellspacing=0> <tr>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>ID</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Name</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Class</font></td>"; echo "<td bgcolor='dfdfdf'> <font face='arial,verdana,helvetica' color='#000000' size='4'>Mark</font></td></tr>"; ////////////// Now let us start executing the query with variables $eu and $limit set at the top of the page/////////// $query=" SELECT * FROM student_adv limit $eu, $limit "; $result=mysql_query($query); echo mysql_error(); //////////////// Now we will display the returned records in side the rows of the table///////// while($noticia = mysql_fetch_array($result)) { if($bgcolor=='#f1f1f1'){$bgcolor='#ffffff';} else{$bgcolor='#f1f1f1';} echo "<tr >"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[id]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[name]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[class]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[mark]</font></td>"; echo "</tr>"; } echo "</table>"; ////////////////////////////// End of displaying the table with records //////////////////////// ///// Variables set for advance paging/////////// $p_limit=8; // This should be more than $limit and set to a value for whick links to be breaked if(!isset($p_f)){$p_f=0;} $p_fwd=$p_f+$p_limit; $p_back=$p_f-$p_limit; //////////// End of variables for advance paging /////////////// /////////////// Start the buttom links with Prev and next link with page numbers ///////////////// echo "<table align = 'center' width='50%'><tr><td align='left' width='20%'>"; if($p_f<>0){print "<a href='$page_name?start=$p_back&p_f=$p_back'><font face='Verdana' size='2'>PREV $p_limit</font></a>"; } echo "</td><td align='left' width='10%'>"; //// if our variable $back is equal to 0 or more then only we will display the link to move back //////// if($back >=0 and ($back >=$p_f)) { print "<a href='$page_name?start=$back&p_f=$p_f'><font face='Verdana' size='2'>PREV</font></a>"; } //////////////// Let us display the page links at center. We will not display the current page as a link /////////// echo "</td><td align=center width='30%'>"; for($i=$p_f;$i < $nume and $i<($p_f+$p_limit);$i=$i+$limit){ if($i <> $eu){ $i2=$i+$p_f; echo " <a href='$page_name?start=$i&p_f=$p_f'><font face='Verdana' size='2'>$i</font></a> "; } else { echo "<font face='Verdana' size='4' color=red>$i</font>";} /// Current page is not displayed as link and given font color red } echo "</td><td align='right' width='10%'>"; ///////////// If we are not in the last page then Next link will be displayed. Here we check that ///// if($p < $nume and $p <($p_f+$p_limit)) { print "<a href='$page_name?start=$next&p_f=$p_f'><font face='Verdana' size='2'>NEXT</font></a>";} echo "</td><td align='right' width='20%'>"; if($p_fwd < $nume){ print "<a href='$page_name?start=$p_fwd&p_f=$p_fwd'><font face='Verdana' size='2'>NEXT $p_limit</font></a>"; } echo "</td></tr></table>"; ?> <center><a href='http://www.plus2net.com'>PHP SQL HTML free tutorials and scripts</a></center> </body> </html>
•
•
Join Date: Aug 2007
Posts: 199
Reputation:
Solved Threads: 0
hi.
1. First I open it, I just see the Link Navigation the even numbers mean (0 2 4 6 8 Next Next8)
2. When I click on any of the navigation link, I see the address bar like below:
php_pagin.php?start=2&p_f=0
php_pagin.php?start=4&p_f=0
php_pagin.php?start=6&p_f=0
php_pagin.php?start=8&p_f=0
means just in the address bar the number changes, nothing else happens in the page
1. First I open it, I just see the Link Navigation the even numbers mean (0 2 4 6 8 Next Next8)
2. When I click on any of the navigation link, I see the address bar like below:
php_pagin.php?start=2&p_f=0
php_pagin.php?start=4&p_f=0
php_pagin.php?start=6&p_f=0
php_pagin.php?start=8&p_f=0
means just in the address bar the number changes, nothing else happens in the page
i looked over the entire code line by line and really didn't see anything wrong. i took out all of the comments and stuff so i could read it better, made a few changes. i think it might work.
if it doesn't work i will probably make my own script that does work.
PHP Syntax (Toggle Plain Text)
<!doctype html public "-//w3c//dtd html 3.2//en"> <html> <head> <title>Plus2net.com paging script in PHP</title> </head> <body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000"> <?php require "config.php"; $page_name="php_paging.php"; if(!isset($start)) { $start = 0; } $eu = ($start -0); $limit = 2; $this_page = $eu + $limit; $back = $eu - $limit; $next = $eu + $limit; $query2=" SELECT * FROM student_adv "; $result2=mysql_query($query2); echo mysql_error(); $nume=mysql_num_rows($result2); $bgcolor="#f1f1f1"; echo "<TABLE width=50% align=center cellpadding=0 cellspacing=0> <tr>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>ID</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Name</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Class</font></td>"; echo "<td bgcolor='dfdfdf'> <font face='arial,verdana,helvetica' color='#000000' size='4'>Mark</font></td></tr>"; $query=" SELECT * FROM student_adv limit $eu, $limit "; $result=mysql_query($query); echo mysql_error(); while($noticia = mysql_fetch_array($result)) { if($bgcolor=='#f1f1f1'){$bgcolor='#ffffff';} else{$bgcolor='#f1f1f1';} echo "<tr >"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[id]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[name]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[class]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[mark]</font></td>"; echo "</tr>"; } echo "</table>"; $p_limit=8; if(!isset($p_f)){$p_f=0;} $p_fwd=$p_f+$p_limit; $p_back=$p_f-$p_limit; echo "<table align = 'center' width='50%'><tr><td align='left' width='20%'>"; if($p_f=0){print "<a href='$page_name?start=$p_back&p_f=$p_back'><font face='Verdana' size='2'>PREV $p_limit</font></a>"; } echo "</td><td align='left' width='10%'>"; if($back >=0 && ($back >=$p_f)) { print "<a href='$page_name?start=$back&p_f=$p_f'><font face='Verdana' size='2'>PREV</font></a>"; } echo "</td><td align=center width='30%'>"; for($i=$p_f;$i < $nume && $i<($p_f+$p_limit);$i=$i+$limit){ if($i = $eu){ $i2=$i+$p_f; echo " <a href='$page_name?start=$i&p_f=$p_f'><font face='Verdana' size='2'>$i</font></a> "; } else { echo "<font face='Verdana' size='4' color=red>$i</font>";} } echo "</td><td align='right' width='10%'>"; if($this_page < $nume && $this_page <($p_f+$p_limit)) { print "<a href='$page_name?start=$next&p_f=$p_f'><font face='Verdana' size='2'>NEXT</font></a>";} echo "</td><td align='right' width='20%'>"; if($p_fwd < $nume){ print "<a href='$page_name?start=$p_fwd&p_f=$p_fwd'><font face='Verdana' size='2'>NEXT $p_limit</font></a>"; } echo "</td></tr></table>"; ?> </body> </html>
if it doesn't work i will probably make my own script that does work.
•
•
Join Date: Aug 2007
Posts: 199
Reputation:
Solved Threads: 0
Really thanks for ur reply,
I used the code, but the system is not able to load the navigation part...I mean it is trying to load something in the page but not able...
If possible plz send me your own script, with comments coz I want to get fimiliar too, that would be very kind of you... Thanks
I used the code, but the system is not able to load the navigation part...I mean it is trying to load something in the page but not able...
If possible plz send me your own script, with comments coz I want to get fimiliar too, that would be very kind of you... Thanks
Last edited by tanha; Sep 30th, 2007 at 5:59 am.
i set up a database to check the code and i think i fixed the problem.
PHP Syntax (Toggle Plain Text)
<?php //**************************************************************************** ////////////////////////Downloaded from www.plus2net.com ////////////////////////////////////////// /////////////////////// Visit www.plus2net.com for more such script and codes. //////// Read the readme file before using ///////////////////// //////////////////////// You can distribute this code with the link to www.plus2net.com /// ///////////////////////// Please don't remove the link to www.plus2net.com /// ////////////////////////// //***************************************************************************** ?> <!doctype html public "-//w3c//dtd html 3.2//en"> <html> <head> <title>Plus2net.com paging script in PHP</title> <meta name="GENERATOR" content="Arachnophilia 4.0"> <meta name="FORMATTER" content="Arachnophilia 4.0"> </head> <body bgcolor="#ffffff" text="#000000" link="#0000ff" vlink="#800080" alink="#ff0000"> <?php require "mysql.php"; // All database details will be included here $page_name="paging.php"; // If you use this code with a different page ( or file ) name then change this if(!isset($start)) { // This variable is set to zero for the first page $start = 0; } $eu = ($start -0); $limit = 1; // No of records to be shown per page. $this = $eu; $number = 2; $back = $eu - $limit; $next = $eu + $limit; /////////////// WE have to find out the number of records in our table. We will use this to break the pages/////// $query2=" SELECT * FROM student_adv "; $result2=mysql_query($query2); echo mysql_error(); $nume=mysql_num_rows($result2); /////// The variable nume above will store the total number of records in the table//// /////////// Now let us print the table headers //////////////// $bgcolor="#f1f1f1"; echo "<TABLE width=50% align=center cellpadding=0 cellspacing=0> <tr>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>ID</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Name</font></td>"; echo "<td bgcolor='dfdfdf' > <font face='arial,verdana,helvetica' color='#000000' size='4'>Class</font></td>"; echo "<td bgcolor='dfdfdf'> <font face='arial,verdana,helvetica' color='#000000' size='4'>Mark</font></td></tr>"; ////////////// Now let us start executing the query with variables $eu and $limit set at the top of the page/////////// $query=" SELECT * FROM student_adv limit $eu, $number "; $result=mysql_query($query); echo mysql_error(); //////////////// Now we will display the returned records in side the rows of the table///////// while($noticia = mysql_fetch_array($result)) { if($bgcolor=='#f1f1f1'){$bgcolor='#ffffff';} else{$bgcolor='#f1f1f1';} echo "<tr >"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[id]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[name]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[class]</font></td>"; echo "<td align=left bgcolor=$bgcolor id='title'> <font face='Verdana' size='2'>$noticia[mark]</font></td>"; echo "</tr>"; } echo "</table>"; ////////////////////////////// End of displaying the table with records //////////////////////// ///// Variables set for advance paging/////////// $p_limit=8; // This should be more than $limit and set to a value for whick links to be breaked if(!isset($p_f)){$p_f=0;} $p_fwd=$p_f+$p_limit; $p_back=$p_f-$p_limit; //////////// End of variables for advance paging /////////////// /////////////// Start the buttom links with Prev and next link with page numbers ///////////////// echo "<table align = 'center' width='50%'><tr><td align='left' width='20%'>"; if($p_f<>0){print "<a href='$page_name?start=$p_back&p_f=$p_back'><font face='Verdana' size='2'>PREV $p_limit</font></a>"; } echo "</td><td align='left' width='10%'>"; //// if our variable $back is equal to 0 or more then only we will display the link to move back //////// if($back >=0 and ($back >=$p_f)) { print "<a href='$page_name?start=$back&p_f=$p_f'><font face='Verdana' size='2'>PREV</font></a>"; } //////////////// Let us display the page links at center. We will not display the current page as a link /////////// echo "</td><td align=center width='30%'>"; for($i=$p_f;$i < $nume and $i<($p_f+$p_limit);$i=$i+$limit){ if($i <> $eu){ $i2=$i+$p_f; echo " <a href='$page_name?start=$i&p_f=$p_f'><font face='Verdana' size='2'>$i</font></a> "; } else { echo "<font face='Verdana' size='4' color=red>$i</font>";} /// Current page is not displayed as link and given font color red } echo "</td><td align='right' width='10%'>"; ///////////// If we are not in the last page then Next link will be displayed. Here we check that ///// if($this < $nume and $this <($p_f+$p_limit)) { print "<a href='$page_name?start=$next&p_f=$p_f'><font face='Verdana' size='2'>NEXT</font></a>";} echo "</td><td align='right' width='20%'>"; if($p_fwd < $nume){ print "<a href='$page_name?start=$p_fwd&p_f=$p_fwd'><font face='Verdana' size='2'>NEXT $p_limit</font></a>"; } echo "</td></tr></table>"; ?> <center><a href='http://www.plus2net.com'>PHP SQL HTML free tutorials and scripts</a></center> </body> </html>
![]() |
Similar Threads
- Gridview Paging Problem. (C#)
- paging problem (ASP)
- Paging in dataGrid (ASP.NET)
- HDD Problem -- Delayed Write Failed (Windows NT / 2000 / XP)
- can't set paging file values (Windows NT / 2000 / XP)
- Trashing and demand paging. (URGENT) (Computer Science)
- "ADODB Recordset error" (ASP)
Other Threads in the PHP Forum
- Previous Thread: Getting mysql "UNaffected" rows
- Next Thread: Need Help with converting an ID to a Name
| Thread Tools | Search this Thread |
.htaccess access alexa apache api array autocomplete beginner broken cakephp class cms code convert cron curl database dataentry date directory display dropdown duplicates dynamic email emptydisplayvalue encode error execute explodefunction fairness file firstoptioninphpdroplist folder form forms function functions google hack href htaccess html htmlspecialchars image include indentedsubcategory ip javascript joomla keywords limit link login mail menu methods multiple multipletables mysql network newsletters object oop passwords paypal pdf php provider query radio random recursive redirect remote script search secure securephp server sessions shot simple source space sql subscription system table tutorial tutorials upload url user validator variable video voteup web youtube






