検索結果($_POST)が2ページ目以降は消える
PHP+MySQLで分割ページを作っています。
検索結果のページを分割しているのですが、2ページ目以降に検索されたレコードが表示されません。
1).2ページ目以降に続きのレコード(下記では21件目以降)を表示させるには、どうすれば良いのでしょうか。
2).上記には関係ないのですが、「<?= $msg ?>」で検索結果の総数を表示したいのですが、「1」としか表示されません…ついでで良いので、ご指摘いただけたらと思います。
<?php
$keyword = $_POST['keyword']//検索ワードになります、下記の例では使用していません
?>
<?php
//データベース接続
$page = $_REQUEST['page'];
if ($page == '') {
$page = 1;
}
$page = max($page, 1);
// 最終ページを取得する
$sql = 'SELECT COUNT(*) AS cnt FROM table1';
$result = mysql_query($sql);
$rows = mysql_fetch_assoc($result);
$maxPage = ceil($rows['cnt'] / 20);
$page = min($page, $maxPage);
$start = ($page - 1) * 20;
$result = mysql_query('SELECT * FROM table1 LIMIT ' . $start . ',20');
$rowss = mysql_num_rows($sql);
//表示するデータを作成
if($rows){
while($row = mysql_fetch_array($result)) {
$tempHtml .= "<tr>";
$tempHtml .= "<td>".$row["id"]."</td><td>".$row["name"]."</td><td>".$row["mail"]."</td>";
$tempHtml .= "</tr>\n";
}
$msg = "".count($rowss)."";
}else{
$msg = "sorry";
}
//結果保持用メモリを開放する
mysql_free_result($result);
?>
//下記から、HTML部に表示しています
<?php
$start_a = ($start + 1);
print "".$start_a."件~";
$start_b = ($start + 20);
print "".$start_b."件を表示しています(".$page."ページ目/全".$maxPage."ページ)<br>";
if ($page > 1) {
print "<a href=\"page.php?page=".($page - 1)."\">前のページへ</a> ";
} else {
print "前のページへ";
}
if ($page < $maxPage) {
print "<a href=\"page.php?page=".($page + 1)."\">次のページへ</a> ";
} else {
print "次のページへ";
}
?>
<?= $msg ?>
何卒、よろしくお願い致します。