Jump to content

Page numbering


Monk3h

Recommended Posts

This script returns info from my database and limits it to a certain amount of items per page, then it adds links to view more pages etc.. also know as pagition.

 

My problem is that i have an error.

 

Error: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /home/monk3h/public_html/WMM/minishop/page.php on line 36

 

Line 36:

while($line = mysql_fetch_array( $qresult ))

 

 

 

 

Full code:

 

<?php include ("config.php");

$pages=$_GET['page']; //Get the current page


// This the full code which will generate a paging system

$limit=2; // Limit of result per page



$qresult = mysql_query("SELECT * FROM items");  // Let's get the query

    

    $nrResults=mysql_num_rows($qresult); // Count the results

    

    if (($nrResults%$limit)<>0) {

        $pmax=floor($nrResults/$limit)+1;  // Divide to total result by the number of query you want

// to display per page($limit) and create a Max page

    } else {

        $pmax=floor($nrResults/$limit);

    }

    $qresult = mysql_query("SELECT * FROM items DESC LIMIT ".(($_GET["page"]-1)*$limit).", $limit"); 

//Need to generate query considering your limit

    while($line = mysql_fetch_array( $qresult ))               // LINE 36 #######################



{

// Now once we got the query from MySQL, we need to think what we to do it. You can do anything. This is just an example

echo "



Name: ".$line['id']." <br />

Age: ".$line['name']." <br />

Phone Number: ".$line['image']." <br />



";



// Here comes the Real part of this Tutorial!!

        

}                 echo "<div class='navpage'>"; // Make a simple css



// We need to create a Previous page, so we need $pages to be bigger than 1, otherwise at the first page we would get a 0. 

//For the previous to show up we need at least to be at the second page.

    if($pages > 1) {

$prevp="<a href='http://www.riseofkingdoms.net/WMM/minishop/page.php?page=".($pages-1)."' title='Previous Page'>Previous Page</a>"; } else {echo "";}    

echo $prevp; 



// Here We want create a page from the results we got by dividing the total by the the limit. So let say you got

//45 results and you want 5 results per page; these simple lines will create you 8 pages.



                                $pid=1; 

                                while ($pid<=$pmax) { 

$paging= "<a href='http://www.riseofkingdoms.net/WMM/minishop/page.php?page=$pid' title='Page $pid of $pmax'> $pid</a>";



//So here, let say we are at the 3rd page and we want the 3 to be blank so the user can know where is he now.

//This will act as Current Page! We need to replace the url by a text



$newpaging=str_replace("<a href='http://www.riseofkingdoms.net/WMM/minishop/page.php?page=$pages' title='Page $pages of $pmax'> $pages</a>", "<span>$pages</span>", $paging);

echo $newpaging;

                            

                                $pid++;  // create pages until reach the result



        

            }  

//We want to create a next page and a last page, $pages have to be less than $pmax.

    if($pages < $pmax) {

$nextp="<a href='http://www.riseofkingdoms.net/WMM/minishop/page.php?page=".($pages+1)."' title='Next Page'>Next Page</a>"; } else {echo "";}    

echo $nextp;

echo  "<a href='http://www.riseofkingdoms.net/WMM/minishop/page.php?page=$pmax' title='Last Page'>Last Page</a>";

echo "</div>";



?>

 

 

Thanks in advance. :)

Link to comment
Share on other sites

SELECT * FROM items DESC LIMIT

 

should be:

 

SELECT * FROM items LIMIT

 

Totally didn't even see that...  If you want to order in descending order then you need to keep that clause in there but specify what to order by.

 

ORDER BY [column_name] DESC LIMIT

Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.