システムタイトル: データの複合取得と ページ内の の表示
システム関数: 一時テーブルを使用してデータベース データを取得し、 ページに を表示します:
処理方法: 一時テーブル ストレージ データを使用します中間結果、中間結果に従ってデータを表示
データの表示はインターレース方式で処理されます
処理の利点: 複雑なクエリ、特に複数のテーブルを含むデータ クエリの場合、クエリ条件が直接使用されると、システムの
オーバーヘッドが非常に大きくなるため、一時テーブルを使用してまずデータを保存してから処理してください。この方法では、データベースへのクエリにかかる費用は 1 回だけです。
使用方法:
を使用するようにデータベースに接続されているユーザー情報とデータ テーブルを変更するだけです。 > //
データベースに接続します $
dbh = mysql_connect('localhost:3306','root','' );
mysql_select_db('test');
//
データの取得結果を一時テーブルに保存します $
ls_sql = ' 一時テーブルを作成します '; $
ls_sql .= ' lk_title,lk_link を選択します from lk_t_content '; $
ls_sql .= " where lk_title like '%".$searchcontent。" %' "; $
res = mysql_query($ls_sql, $dbh);
/ /
取得したデータの総数を取得します $
ls_sql = 'select count(*) as rcnt_con from temps '; $
res = mysql_query($ls_sql, $dbh); $
rcon = $row[ "rcnt_con"];
$pages=ceil($
rcon / 20); //$pages変数内の総ページ数 if (empty($offset)) {
$
curline
= 0; } else $curline
= ($offset - 1) * 20;
//テーブルヘッダーを印刷
print '< table width="100%" border="0">'; print '<tr
class="text"> div align="center"> ;';
if ($offset <> 1) { //オフセットが
0 の場合、前のページは表示されません link $newoffset=$offset -
;print "href='$PHP_SELF?offset=$newoffset'>前一页";
} else {
print "前一页";
print " ";
}
//显示所有的页数
for ($i=1; $i <= $pages; $i++) {
$temps = "href='".$PHP_SELF.'?offset='.$i."'>".$i."";
print $temps;
print " ";
}
//检查是否是最后一页
if ($pages!=0 && $offset!=$pages) {
$newoffset=$offset+1;
print "href='$PHP_SELF?offset=$newoffset'>下一页";
} else print "下一页";
print '
查询结果信息 | '; '.$tempstr.' | ';