
CuzDesign
Deleted
Jun 21, 2000, 2:54 PM
Post #1 of 3
(1896 views)
|
10 results per page search Problem.
|
Can't Post
|
|
Hello, I have looked over and studdied how to keep the results of a search from a database to show the first 10 and have the links to the other pages on the bottom, Previous and Next and so on... Here is the code I am using, any help would be appreciated. <BLOCKQUOTE><font size="1" face="Arial,Helvetica,sans serif">code:</font><HR> #!/usr/local/bin/perl print "Content-type: text/html\n\n"; use CGI qw(param); $pagesize = 10; $result_count = 0; $string = param('string'); $mod = param('mod'); if (($string eq "") && ($mod eq "")){ print "No data entered to search for.<br>\n"; print "Please <a href=\"Javascript:history.back()\">click here</a> to go back.\n"; exit; } $dude = 0; print "<table width=\"600\" cellspacing=\"0\" cellpadding=\"2\" border=\"0\"><tr bgcolor=\"#000000\">\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Photo</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Stock</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Year</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Make</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Model</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Price</font></b></td>\n"; print "<td><b><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#FFFFFF\">Details</font></b></td>\n"; print "</tr>\n"; open (DATA,"<cars.dat") or die "Couldn't open cars.dat $!\n"; while (<DATA> ){ chomp; @results = split(/:/,$_); $result_count++; if ($dude eq 0) { $color = '#D0D0D0'; $dude = 1; } else { $dude = 0; $color = '#FFFFFF'; } # Check to see how many to show on page if ($result_count != 0) { $pagecount = int($result_count / $pagesize); if (($pagecount * $pagesize) != $result_count) { $pagecount++; } } $firstresult = (($reqpage - 1) * $pagesize) + 1; $lastresult = $firstresult + $pagesize - 1; if ($lastresult > $result_count) { $lastresult = $result_count; } if ($results[1] eq $string or $results[4] eq $mod){ $good = 1; if ($results[0] ne "none"){ print "<tr bgcolor=$color>\n"; print "<td align=\"center\"><a href=\"http://cuzzart.com/usedhtml/$stock.html\"><img src=\"http://cuzzart.com/usedhtml/images/camera.gif\" border=\"0\"></a></td>\n"; }else{ print "<td align=\"center\"><img src=\"http://cuzzart.com/usedhtml/images/none.gif\" border=\"0\"></td>\n"; } print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\">", $results[1],"</font></td>\n"; print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\">", $results[2],"</font></td>\n"; print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\">", $results[3],"</font></td>\n"; print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\">", $results[4],"</font></td>\n"; print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\">\$", $results[5],"</font></td>\n"; print "<td><FONT SIZE=\"-1\" FACE=\"verdana, arial, helvetica\" color=\"#000000\"><a href=\"http://cuzzart.com/usedhtml/$results[1].html\">Details</a></font></td>\n"; print "</tr>\n"; $prev_page = $reqpage - 1; $next_page = $reqpage + 1; if ($reqpage == 1) { $prev_link = ""; } else { $prev_link = " <a href=\"cgi-bin/results.pl?reqpage=$prev_page&pagesize=$pagesize\">" . "PREVIOUS" . "</a>"; } if ($reqpage == $pagecount) { $next_link = ""; } else { $next_link = " <a href=\"cgi-bin/results.pl?reqpage=$next_page&pagesize=$pagesize\">" . "NEXT" . "</a>"; } if ($pagecount > 1) { $pagelinks = $prev_link; $pageno = 0; while ($pageno < $pagecount) { $pageno++; if ($pageno == $reqpage) { $thislink = " <b>$pageno</b> "; } else { $thislink = " <a href=\"cgi-bin/results.pl?reqpage=$pageno&pagesize=$pagesize\">" . $pageno . "</a>"; } $pagelinks = $pagelinks . $thislink; } $pagelinks = $pagelinks . " " . $next_link; } else { $pagelinks = ""; } } } close DATA; print "<table>"; print "$pagelinks"; if ($good ne 1){ print "No entries found\n"; } </pre><HR></BLOCKQUOTE> Thank you in advance. Ray [This message has been edited by CuzDesign (edited 06-21-2000).]
|