i've implemented this pagination class for search.php page in a separate file called class.pagination.php, but when i execute the search page, nothing happens. it just displays a blank page.
this is my search.php file, where i'm calling this class:
<?php
include 'config.php';
require ('class.pagination.php');
$search_result = "";
$search_result = $_GET["q"];
$search_result = trim($search_result);
//Check if the string is empty
if ($search_result == "") {
echo "<p class='error'>Search Error. Please Enter Your Search Query.</p>" ;
exit();
}
//search query for multiple keywords
if(!empty($search_result))
{
// the table to search
$table = "thquotes";
// explode search words into an array
$arraySearch = explode(" ", $search_result);
// table fields to search
$arrayFields = array(0 => "cQuotes");
$countSearch = count($arraySearch);
$a = 0;
$b = 0;
$query = "SELECT cQuotes, vAuthor, cArabic, vReference FROM ".$table." WHERE (";
$开发者_JS百科countFields = count($arrayFields);
while ($a < $countFields)
{
while ($b < $countSearch)
{
$query = $query."$arrayFields[$a] LIKE '%$arraySearch[$b]%'";
$b++;
if ($b < $countSearch)
{
$query = $query." AND ";
}
}
$b = 0;
$a++;
if ($a < $countFields)
{
$query = $query.") OR (";
}
}
$query = $query.")";
$result = mysql_query($query, $conn)
or die ('Error: '.mysql_error());
$totalrows = mysql_num_rows($result);
if($totalrows < 1)
{
echo '<span class="error2">No matches found for "'.$search_result.'"</span>';
}
else
{
?>
<div class="caption">Search Results</div>
<div class="center_div">
<table>
<?php while ($row= mysql_fetch_array($result, MYSQL_ASSOC)) {
$cQuote = highlightWords(htmlspecialchars($row['cQuotes']), $search_result);
?>
<tr>
<td style="text-align:right; font-size:15px;"><?php h($row['cArabic']); ?></td>
<td style="font-size:16px;"><?php echo $cQuote; ?></td>
<td style="font-size:12px;"><?php h($row['vAuthor']); ?></td>
<td style="font-size:12px; font-style:italic; text-align:right;"><?php h($row['vReference']); ?></td>
</tr>
<?php } ?>
</table>
</div>
<?php
}
}
else {
exit();
}
//Setting Pagination
$pagination = new pagination();
$pagination->byPage = 5;
$pagination->rows = $totalrows; // number of records in a table-back mysql_num_rows () instance or another, you have to play
$from = $pagination->fromPagination(); // sql used for applications such LIMIT $ from, $ pagination-> byPage
$pages = $pagination->pages();
if(isset($pages)) {?>
<div class="pagination">
<?foreach ($pages as $key){?>
<?if($key['current'] == 1) {?>
<a href="?p=<?=$key['p']?>" class="active"><?=$key['page']?></a>
<?} else {?>
<a href="?p=<?=$key['p']?>" class="inactive"><?=$key['page']?></a>
<?}?>
<?}?>
</div>
<?}
//End Pagination
?>
At the beginning you require class.pagination.php
but on your blog it says the filename is pagination.class.php
. Is this the problem?
Try to echo
something before the includes.
精彩评论