我有两个db我必须搜索;结果最终应该在一个分页表中,每个页面有5行,每个6个单元格。我构建了最后的页面,最后给出了两个结果:$ retval1和$ retval2
mysql_select_db('DEB' , $con);
$search1 = "SELECT Attestation
FROM Words
WHERE BINARY Word = '$target' ";
$retval1 = mysql_query($search1, $con);
$rows1 = mysql_num_rows($retval1);
mysql_select_db('DEM', $con);
$search2 = "SELECT Attestation
FROM Words
WHERE BINARY Word = '$target' ";
$retval2 = mysql_query($search2, $con);
$rows2 = mysql_num_rows($retval2);
$rows = ($rows1 + $rows2);
$rowsperpage = 30;
$totalpages = ceil($rows / $rowsperpage);
if (isset($_GET['currentpage']) && is_numeric($_GET['currentpage'])) {
// cast var as int
$currentpage = (int) $_GET['currentpage'];
} else {
// default page num
$currentpage = 1;
} // end if
// if current page is greater than total pages...
if ($currentpage > $totalpages) {
// set current page to last page
$currentpage = $totalpages;
} // end if
// if current page is less than first page...
if ($currentpage < 1) {
// set current page to first page
$currentpage = 1;
} // end if
// the offset of the list, based on current page
$offset = ($currentpage - 1) * $rowsperpage;
mysql_select_db('DEB' , $con);
$search1 = "SELECT Attestation
FROM Words
WHERE BINARY Word = '$target'
LIMIT $offset, $rowsperpage";
$retval1 = mysql_query($search1, $con);
mysql_select_db('DEM', $con);
$search2 = "SELECT Attestation
FROM Words
WHERE BINARY Word = '$target'
LIMIT $offset, $rowsperpage ";
$retval2 = mysql_query($search2, $con);
之后我创建了一个表并将结果放在其中:
<table >
<?
$i = -1;
while($row1 = mysql_fetch_assoc($retval1)){
$i++;
if($i/6== intval($i/6)){
?>
<tr>
<?
}
?>
<td>
<?
// Now echo the db row
echo $row1['Attestation'];
?>
</td>
<?
if(($i+1)/6 == intval(($i+1)/6)){
?>
</tr>
<?
}
}
$i = -1;
while($row2 = mysql_fetch_assoc($retval2)){
$i++;
if($i/6== intval($i/6)){
?>
<tr>
<?
}
?>
<td>
<?
// Now echo the db row
echo $row2['Attestation'];
?>
</td>
<?
if(($i+1)/6 == intval(($i+1)/6)){
?>
</tr>
<?
}
}
}?>
</table>
这与一个数据库完美配合,但有两个布局无法正常工作。假设我在第一次搜索时有60个结果,在第二次搜索时有50个结果。布局将在第一页上给我30个结果,第一次搜索+第二次30,然后是下一页30次搜索结果+第二次搜索20次。 我需要的是第一页包含第一次搜索的30个结果,第2页包含第一次搜索的30个结果,第三页包含第二次搜索的结果,依此类推
我想在进行分页之前我必须加入两个结果。但UNION似乎没有用,因为我有两个不同的数据库。
欢迎任何想法。