2015-05-01 2 views
0

У меня есть этот код для test3.php, с разбивкой на страницы и поиск, разбиение на страницы работает отлично, но поиск не работает. Я не знаю, в чем проблема в моем коде. Может кто-нибудь помочь мне с моей функцией поиска. Я искал в Интернете, но я не мог найти решения по моей проблеме. Пожалуйста, помогите мне об этом. Спасибо.pagination с поиском, но поиск не работает

<html> 
<head> 
<title>Pagination</title> 



<body> 

<form name="search_form" method="POST" action=""> 

Search:<input type="text" name="search_box" value="" /> 
<input type="submit" name="search" value="search the table" /> 

</form> 

<?php 

mysql_connect("localhost","root","") or die (mysql_error()); 
mysql_select_db("region_survey") or die (mysql_error()); 

$sql = mysql_query("SELECT * FROM municipality ORDER BY id ASC"); 

$nr = mysql_num_rows($sql); 
if (isset($_GET['pn'])) { 
$pn = preg_replace('#[^0-9]#i', '', $_GET['pn']); 
} else { 
$pn = 1; 
} 

$itemsPerPage = 10; 

$lastPage = ceil($nr/$itemsPerPage); 

if ($pn < 1) { 
$pn = 1; 
} else if ($pn > $lastPage) { 
$pn = $lastPage; 
} 

$centerPages = ""; 
$sub1 = $pn - 1; 
$sub2 = $pn - 2; 
$add1 = $pn + 1; 
$add2 = $pn + 2; 
if ($pn == 1) { 
$centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;'; 
$centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;'; 
} else if ($pn == $lastPage) { 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;'; 
    $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;'; 
} else if ($pn > 2 && $pn < ($lastPage - 1)) { 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub2 . '">' . $sub2 . '</a> &nbsp;'; 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;'; 
    $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;'; 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;'; 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add2 . '">' . $add2 . '</a> &nbsp;'; 
} else if ($pn > 1 && $pn < $lastPage) { 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $sub1 . '">' . $sub1 . '</a> &nbsp;'; 
    $centerPages .= '&nbsp; <span class="pagNumActive">' . $pn . '</span> &nbsp;'; 
    $centerPages .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '?pn=' . $add1 . '">' . $add1 . '</a> &nbsp;'; 
    } 

$limit = 'LIMIT ' .($pn - 1) * $itemsPerPage .',' .$itemsPerPage; 

$sql2 = mysql_query("SELECT * FROM municipality ORDER BY id ASC $limit"); 

$paginationDisplay = ""; 

if ($lastPage != "1"){ 

$paginationDisplay .= 'Page <strong>' . $pn . '</strong> of ' . $lastPage. '&nbsp; &nbsp; &nbsp; '; 

if ($pn != 1) { 
    $previous = $pn - 1; 
$paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '? pn=' . $previous . '"> Back</a> '; 
} 

$paginationDisplay .= '<span class="paginationNumbers">' . $centerPages . '</span>'; 

if ($pn != $lastPage) { 
    $nextPage = $pn + 1; 
$paginationDisplay .= '&nbsp; <a href="' . $_SERVER['PHP_SELF'] . '? pn=' . $nextPage . '"> Next</a> '; 
} 
} 

$outputList = ''; 

?> 
<div id="tables"> 
<table> 

    <tr> 
     <th>LO Name</th> 
     <th>Province</th> 
     <th>Location</th> 
     <th>Action</th> 
     <th>Update</th> 
    </tr> 


<?php 

while($row = mysql_fetch_array($sql2)) { 
    $id=$row['id']; 
?> 

    <tr> 
     <td><?php echo $row['id']; ?></td> 
     <td><?php echo $row['province_id']; ?></td> 
     <td><?php echo $row['municipality_name']; ?></td> 
     <td><input name="selector[]" type="checkbox" 
id="checkbox[]" value="<?php echo $row['id'];?>"></td> 
<td><a href="update.php<?php echo '?id='.$row['id']; ?>">Edit</a>  </td> 

    </tr> 
<?php 
} 
?> 
</table> 


<?php 
$con = mysql_connect("localhost","root",""); 
if (!$con) { 
die('Could not connect: ' . mysql_error()); 
} 

mysql_select_db("region_survey", $con); 

$result = mysql_query("select count(1) FROM municipality"); 
$row = mysql_fetch_array($result); 


$total = $row[0]; 
echo "Total rows: " . $total; 

mysql_close($con); 
?> 

<br /> 
<br /> 
<?php echo $paginationDisplay; ?> 
</body> 
</html> 

ответ

0

Вы не добавить ключевое слово, по которому запрос будет искать в вашем использовании базы данных ниже запроса

mysql_query("SELECT * FROM municipality where <your-field-name> LIKE %".$_POST['<your input box name>']." ORDER BY id ASC");

Надеется, что это поможет вам в решении вашей проблемы

+0

whre РЕКОМЕНДУЕМОЙ Я положил этот код? –

+0

в вашем запросе sql используйте предложение LIKE в вашем запросе sql –

+0

Я знаю это, но я просто новичок в php, и я надеюсь, что вы меня понимаете. Не знаете, где именно его поместить .. Не могли бы вы показать мне .. –

Смежные вопросы