Noskiw Posted October 6, 2009 Share Posted October 6, 2009 <?php $connect = mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("guest") or die(mysql_error()); function bbcode($string) { if ($string) { $bbcode_array = array('[b]', '[/b]', '[u]', '[/u]', '[i]', '[/i]', '[code]', ' ', ''); $bbcode_array_2 = array('<b>', '</b>', '<u>', '</u>', '<i>', '</i>', '<center><div style="width:90%;padding:3px;background-color:#000099;color:#FFFFFF;border:2px solid;">', '</div></center>', '<img src="', '">'); $new_string_2 = str_ireplace($bbcode_array, $bbcode_array_2, $string); return $new_string_2; } } echo "<h1>Guestbook</h1><hr />"; $queryget = mysql_query("SELECT * FROM guest ORDER BY id DESC") or die(mysql_error ()); $querygetrownum = mysql_num_rows($queryget); if ($querygetrownum == 0) { echo "No posts have been made yet! Be the first!"; } $per_page = 5; $start = $_GET['start']; $record_count = mysql_num_rows(mysql_query("SELECT * FROM guest")); $max_pages = $record_count / $per_page; if (!$start) { $start = 0; $get = mysql_query("SELECT * FROM guest LIMIT $start, $per_page"); while ($row2 = mysql_fetch_assoc($get)) { $name2 = $row2['name']; $email2 = $row2['email']; $message2 = $row2['message']; $date2 = $row2['date']; $time2 = $row2['time']; echo "<table><tr><td><b>Posted by: " . $name2 . "(" . $email2 . ") on " . $date2 . " at " . $time2 . "</b></td></tr><tr><td>" . nl2br(bbcode(strip_tags($message2))) . "</td></tr></table>"; echo "<hr />"; } } //setup prev and next variables $prev = $start - $per_page; $next = $start + $per_page; //show prev button if (!($start <= 0)){ echo "<a href='index.php?start=$prev'>Prev</a> "; }else{ echo "« Prev"; } //show page numbers //set variable for first page $i = 1; for ($x = 0; $x < $record_count; $x = $x + $per_page) { if ($start != $x){ echo " <a href='index.php?start=$x'>$i</a> "; }else{ echo " <a href='index.php?start=$x'><b>$i</b></a> "; } $i++; } //show next button if (!($start >= $record_count - $per_page)){ echo " <a href='index.php?start=$next'>Next</a>"; }else{ echo "Next »"; } if ($_POST['submit']) { $name = $_POST['name']; $email = $_POST['email']; $message = $_POST['message']; $date = date("Y-m-d"); $time = date("H:i:s"); if ($name && $email && $message) { $querypost = mysql_query("INSERT INTO guest VALUES('','" . $name . "','" . $email . "','" . $message . "','" . $date . "','" . $time . "')"); echo "Please wait... <meta http-equiv='refresh' content='2'>"; } else { echo "Please fill out all fields!"; } } echo "<hr />"; echo " <form action='index.php' method='POST'> <table width='100%'> <tr> <td width='7%' valign='top'> Your Name: </td> <td valign='top'> <input type='text' name='name' maxlength='25' /> </td> </tr> <tr> <td valign='top'> Your Email: </td> <td> <input type='text' name='email' maxlength='25' /> </td> </tr> <tr> <td valign='top'> Your Message: </td> <td> <textarea cols='20' rows='2' name='message' maxlength='250'></textarea> <p><input type='submit' name='submit' value='Post' /> </td> </tr> </table> </form>"; ?> <style type="text/css"> body{font-family:Arial;font-size:14px;background-image: url('./images/bg.png');color:#FFFF00;}h1{font-family:Arial;}hr{color:#FFFF00; }a{color:#FFFFFF;text-decoration:none;}a:hover{color:#FFFFFF;text-decoration:underline;} </style>[/code] i have finished what i wanted to do, but unfortunately, when i click on next in the page part, it wont display the next set of rows. There is more than 5 when i looked in my mysql table, but when i go to the next page, there is nothing.... Please may someone help me. Quote Link to comment https://forums.phpfreaks.com/topic/176736-pagination/ Share on other sites More sharing options...
Noskiw Posted October 6, 2009 Author Share Posted October 6, 2009 bumpety bump Quote Link to comment https://forums.phpfreaks.com/topic/176736-pagination/#findComment-931828 Share on other sites More sharing options...
nafetski Posted October 6, 2009 Share Posted October 6, 2009 Looking through your code, I'm not really seeing where the offsets are being declared for the DB query? Quote Link to comment https://forums.phpfreaks.com/topic/176736-pagination/#findComment-931904 Share on other sites More sharing options...
mikesta707 Posted October 6, 2009 Share Posted October 6, 2009 if i had to guess, it would be this line $get = mysql_query("SELECT * FROM guest LIMIT $start, $per_page"); if your start is anything but 0, it won't work. say start is now 6. since per page is 5, it will be LIMIT 6, 5 does that make any sense? You probably want to add 5 to per page, as well as start. Quote Link to comment https://forums.phpfreaks.com/topic/176736-pagination/#findComment-931905 Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.