私はphpファイルでページングをしようとしています。function.php ファイルに php 関数を記述し、そのファイルを他の php ファイルに含めます。問題は、他の php ファイルで $count,$res の値を取得する方法です。other.php で $count,$res の値を取得していません。
//function.php
function Paging($tbl_name,$targetpage,$where,$limit,$page,$qstr)
{
//$tbl_name="shopitup_productmaster"; //your table name
// How many adjacent pages should be shown on each side?
$adjacents = 3;
/*
First get total number of rows in data table.
If you have a WHERE clause in your query, make sure you mirror it here.
*/
$query = "SELECT COUNT(*) as num FROM $tbl_name where ".$where;
$total_pages = mysql_fetch_array(mysql_query($query));
$total_pages = $total_pages[num];
/* Setup vars for query. */
//$targetpage = "paging.php"; //your file name (the name of this file)
//$limit = 2; //how many items to show per page
//$page = $_GET['page'];
if($page)
$start = ($page - 1) * $limit; //first item to display on this page
else
$start = 0; //if no page var is given, set start to 0
/* Get data. */
echo $sql = "SELECT * FROM $tbl_name where ".$where." LIMIT $start, $limit";
$res = mysql_query($sql);
$count=mysql_num_rows($res);
/* Setup page vars for display. */
if ($page == 0) $page = 1; //if no page var is given, default to 1.
$prev = $page - 1; //previous page is page - 1
$next = $page + 1; //next page is page + 1
$lastpage = ceil($total_pages/$limit); //lastpage is = total pages / items per page, rounded up.
$lpm1 = $lastpage - 1; //last page minus 1
$pagination = "";
if($lastpage > 1)
{
$pagination .= "<div class=\"pagination\">";
//previous button
if ($page > 1)
$pagination.= '<a href="'.$targetpage.'?page='.$prev.$qstr.'">« previous</a>';
else
$pagination.= "<span class=\"disabled\">previous</span>";
//pages
if ($lastpage < 7 + ($adjacents * 2)) //not enough pages to bother breaking it up
{
for ($counter = 1; $counter <= $lastpage; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= '<a href="'.$targetpage.'?page='.$counter.$qstr.'">'.$counter.'</a>';
}
}
elseif($lastpage > 5 + ($adjacents * 2)) //enough pages to hide some
{
//close to beginning; only hide later pages
if($page < 1 + ($adjacents * 2))
{
for ($counter = 1; $counter < 4 + ($adjacents * 2); $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter.$qstr\">$counter</a>";
}
$pagination.= "...";
$pagination.= "<a href=\"$targetpage?page=$lpm1.$qstr\">$lpm1</a>";
$pagination.= "<a href=\"$targetpage?page=$lastpage.$qstr\">$lastpage</a>";
}
//in middle; hide some front and some back
elseif($lastpage - ($adjacents * 2) > $page && $page > ($adjacents * 2))
{
$pagination.= "<a href=\"$targetpage?page=1\">1</a>";
$pagination.= "<a href=\"$targetpage?page=2\">2</a>";
$pagination.= "...";
for ($counter = $page - $adjacents; $counter <= $page + $adjacents; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter.$qstr\">$counter</a>";
}
$pagination.= "...";
$pagination.= "<a href=\"$targetpage?page=$lpm1.$qstr\">$lpm1</a>";
$pagination.= "<a href=\"$targetpage?page=$lastpage.$qstr\">$lastpage</a>";
}
//close to end; only hide early pages
else
{
$pagination.= "<a href=\"$targetpage?page=1.$qstr\">1</a>";
$pagination.= "<a href=\"$targetpage?page=2.$qstr\">2</a>";
$pagination.= "...";
for ($counter = $lastpage - (2 + ($adjacents * 2)); $counter <= $lastpage; $counter++)
{
if ($counter == $page)
$pagination.= "<span class=\"current\">$counter</span>";
else
$pagination.= "<a href=\"$targetpage?page=$counter.$qstr\">$counter</a>";
}
}
}
//next button
if ($page < $counter - 1)
$pagination.= "<a href=\"$targetpage?page=$next.$qstr\">next</a>";
else
$pagination.= "<span class=\"disabled\">next »</span>";
$pagination.= "</div>\n";
}
//return $pagination;
echo $pagination;
}
?>
other.php
<?php
ob_start();
session_start();
include("conn.php");
include("function.php");
$tbl="gallary";
$tb="album";
$aid=$_GET['aid'];
$aname=$_GET['name'];
?>
$where="aid='$aid'";
$limit="6";
$qstr="&aid=$aid";
$counter=1;
$tbl_name = "gallary";
$targetpage = $_SERVER['PHP_SELF'];
if(strlen(trim($_GET['page'])) > 0)
{ $page =($_GET['page']); }
if($page) { $start = ($page - 1) * $limit; } //first item to display on this page
else { $start = 0; }
?>
<?php $pagination=Paging($tbl_name,$targetpage,$where,$limit,$page,$qstr);?>
<?php echo "count=$count;" ?>
<?php
if($count==0)
{?>
<table align="center" style="padding-top:30px;">
<tr><b>NO Image Available in this Album....!!!!</tr></table>
<?
}
else
{
$i=0;
for($j=1;$j<=$count;$j+=3)
{
?>
<table align="center" style="padding-top:30px;">
<tr></tr>
<tr><td>
<?php
$row= mysql_fetch_assoc($res);
$img=stripslashes($row['image']);
$img_id=$row['eid'];