pagination - need help on passing of search query.


Posted on 16th Feb 2014 07:03 pm by admin

Hi, i have been trying for days but couldn't get this sorted out. Would like some professional help here.
Basically I got a basic pagination script from google search and the script works absolutely well if i am to display the full results.
However i am using the 'SELECT...WHERE.. LIKE %$val%' and the result works well for the 1st page but not on the 2nd or 3rd page. i had a search form to submit my value. Some help as to where i should proceed is greatly appreciated! Cheers
Here's my coding:
Did you know?Explore Trending and Topic pages for more stories like this.

form.php
Code: <form action="FTsearch.php" method="post">
<table border=0 cellspace=1 cellpadding=3 bgcolor;"#353535"
align="center">
<tr>
<td bgcolor="#eeeeff" width="50%">
Device Number
</td>
<td bgcolor="#eeeeff" width="50%">
<INPUT type = "TEXT" name = "devicesearch">
</td>
</tr>
<tr>
<td bgcolor ="eeeeff" colspan=2 align="center">
<INPUT Type="SUBMIT" name="submit" value="Device Search">
</td>
</tr>
</table>
</form>
FTsearch.php
Code: $val_d = $_POST['devicesearch'];

if ($_POST['SEARCH'] = 'Device Search')
{
$sql = "SELECT *
FROM device
WHERE device_num LIKE '%$val_d%' or '%$val_d'";

$results1 = mysql_query($sql) or die ("Sorry no match found!".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;
}
$pagenum = $_GET['pagenum'];
echo "<center>";


/* if(!isset($_GET['page'])) {
$pagenum = 1;
} else {
$pagenum = $_GET['page'];
} */

$numrows = mysql_num_rows($results1);
$page_rows = 10; //This is the number of results displayed per page
$last = ceil($numrows/$page_rows); //This tells us the page number of our last page

if ($pagenum < 1) //this makes sure the page number isn't below one, or more than our maximum pages
{
$pagenum = 1;
}
elseif ($pagenum > $last)
{
$pagenum = $last;
}

$max = 'limit ' .($pagenum - 1) * $page_rows .',' .$page_rows; //This sets the range to display in our query

$sql = "SELECT *
FROM device
WHERE device_num LIKE '%$val_d%' or '%$val_d' $max";
$results = mysql_query($sql) or die (mysql_error());

// this is the result display
include "FTsearchtable.php";


echo "

<center>Page $pagenum of $last

"; // This shows the user what page they are on, and the total number of pages

// 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)
{

echo " <a href='{$_SERVER['PHP_SELF']}?&pagenum=1'>First</a> ";
$previous = $pagenum-1;
echo " <a href='{$_SERVER['PHP_SELF']}?&pagenum=$previous'>Previous</a> ";
}
//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> ";
}

}
No comments posted yet

Your Answer:

Login to answer
265 Like 38 Dislike
Previous forums Next forums
Other forums

php slowing my site?
Hi all,

I think that one of the reasons that my site doesn't work fast is that the code is ve

Displaying image from database
Hi,

I've got a site where that's got a database behind it. Currently it has loads of items in

Help with captcha script needed
Hello,

I am working on a script where reCAPTCHA or a similar form of CAPTCHA will be used, f

Binding 2 UDP sockets on same port, connected to different destinations, 1 receives
Hello,
My application wants to send/recv data to 2 different UDP ports on a remote computer, us

str_replace help
Hey there,

I'm a PHP newb, I'm having troubles with the str_replace function. I want to clean

what business processes?
Hi,

A general question. What business processes (like OTC - Order to Cach, P2P, R2R etc)

Filling gaps in dates
So i'm doing a query for sales data and my return array looks like this

('date' => '20

A problem with my GD class
Hello,

I created a nice (and simple for now) GD class.
The problem is , it works great on

User feedback after MySQL query has been executed
Hi all, I've just registered on PHPFreaks because I've got a question that I simply can't work out b

Disabling SAP menu
How do I disable SAP menu for all the users and just restrict them to User Menu in SAP ECC 6.0?

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash