contra10 Posted December 29, 2008 Share Posted December 29, 2008 hi my data is being shown but when i click last or try to connect back to the first page i don't get anywhere heres my code <?php mysql_connect("localhost", "root", "") or die(mysql_error()); mysql_select_db("registration") or die(mysql_error()); if(is_numeric($_GET['id'])){ $id = $_GET['id']; $insert3= "SELECT * FROM post_grp WHERE grpid = '$id' ORDER BY pgid DESC"; $topic3 = mysql_query($insert3) or die(mysql_error()); } //This checks to see if there is a page number. If not, it will set it to page 1 if (!(isset($pagenum))) { $pagenum = 1; } //Here we count the number of results //Edit $data to be your query $data = mysql_query("SELECT * FROM post_grp WHERE grpid = '$id' ORDER BY pgid DESC") or die(mysql_error()); $rows = mysql_num_rows($data); //This is the number of results displayed per page $page_rows = 4; //This tells us the page number of our last page $last = ceil($rows/$page_rows); //this makes sure the page number isn't below one, or more than our maximum pages if ($pagenum < 1) { $pagenum = 1; } elseif ($pagenum > $last) { $pagenum = $last; } //This sets the range to display in our query $max = 'limit ' .($pagenum - 1) * $page_rows .',' .$page_rows; //This is your query again, the same one... the only difference is we add $max into it $data_p = mysql_query("SELECT * FROM post_grp WHERE grpid = '$id' ORDER BY pgid DESC $max") or die(mysql_error()); //This is where you display your query results while($info = mysql_fetch_array( $data_p )) { $userpost= "{$info['grppost']}"; $username= "{$info['username']}"; $usermonth= "{$info['month']}"; $userday= "{$info['day']}"; $useryear= "{$info['year']}"; echo "<table border='1' align='center'>"; echo "<tr>"; echo"<td width= '500' align='center'> $userpost</td>"; echo "</tr>"; echo "<tr>"; echo "<td align='right'>Posted by $username on $usermonth, $userday $useryear</td>"; echo "<tr>"; echo"</table>"; } echo "<p>"; // This shows the user what page they are on, and the total number of pages echo " --Page $pagenum of $last-- <p>"; // First we check if we are on page one. If we are then we don't need a link to the previous page or the first page so we do nothing. If we aren't then we generate links to the first page, and to the previous page. if ($pagenum == 1) { } else { echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=1'> <<-First</a> "; echo " "; $previous = $pagenum-1; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$previous'> <-Previous</a> "; } //just a spacer echo " ---- "; //This does the same as above, only checking if we are on the last page, and then generating the Next and Last links if ($pagenum == $last) { } else { $next = $pagenum+1; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$next'>Next -></a> "; echo " "; echo " <a href='{$_SERVER['PHP_SELF']}?pagenum=$last'>Last ->></a> "; } ?> Quote Link to comment Share on other sites More sharing options...
Maq Posted December 29, 2008 Share Posted December 29, 2008 Where do you $_GET pagenum? How are you going to tell what page to proceed to without knowing what page you're on? And it should be (line 15): if (!isset($pagenum)) Quote Link to comment Share on other sites More sharing options...
contra10 Posted December 30, 2008 Author Share Posted December 30, 2008 i changed that to the isset but it does the same thing it did before...my problem is that when i first go onto the page i'm shown this url http://localhost/groupsio/post.php?id=1 PAGE 1 of 4 when i click next or in this case last i get http://localhost/groupsio/post.php?pagenum=2 PAGE 1 of 2 but when i click previous i don't get anything it just stays on the same page Quote Link to comment Share on other sites More sharing options...
Maq Posted December 30, 2008 Share Posted December 30, 2008 but when i click previous i don't get anything it just stays on the same page Look at $pagenum. It's ALWAYS equal to 1. $pagenum is never going to be reset when you click on a link (refresh the page). I think you should do: //This checks to see if there is a page number. If not, it will set it to page 1 $pagenum = (isset($_GET['pagenum'])) ? $_GET['pagenum'] : 1; Now you know what page you just clicked on to set up your links for the next click. $_GET['pagenum'] = the page that the user just clicked on $pagenum will equal $_GET['pagenum'] to do the calculations of what's next/previous/first etc... Do this make sense? Quote Link to comment Share on other sites More sharing options...
contra10 Posted December 30, 2008 Author Share Posted December 30, 2008 makes perfect sense, thank u Quote Link to comment Share on other sites More sharing options...
Maq Posted December 30, 2008 Share Posted December 30, 2008 I assume you haven't tried it yet but, you're welcome! Quote Link to comment Share on other sites More sharing options...
contra10 Posted December 30, 2008 Author Share Posted December 30, 2008 sry, the code works its just that that was for a particular group. when i create another group and let them have their own post everytime i click the submit button i get redirected to the other post. but when i cleck back and refresh the page the post loads where its suppose to be... i guess my qustion is, can i click post withou being redirected to the other post? Quote Link to comment Share on other sites More sharing options...
Maq Posted December 30, 2008 Share Posted December 30, 2008 I don't see any submit button in your code. If you have another question I suggest you create a new thread with all the relevant code. Quote Link to comment 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.