ホームページ > バックエンド開発 > PHPチュートリアル > ページめくりに関する質問

ページめくりに関する質問

WBOY
リリース: 2016-06-13 13:40:52
オリジナル
1078 人が閲覧しました

ページめくりの問題
Smarty を使用して Web サイトを構築していると、最近このような問題に遭遇しました。それは、写真を 1 枚ずつページめくり (前ページ、次ページ) する問題です。画像の名前はデータベースに保存され、画像 ID が主キーとなり、自動的に増加するように設定されます。ページ上で「次のページ」をクリックすると次のページにリンクし、動的に変数(画像ID)を渡して次の画像を呼び出します。ただし、バックグラウンド管理中に一部の写真が削除され、データベース内の写真 ID が不連続になる可能性があります。では、ループで読み込む場合、ID の大きい順に写真を読み込むにはどうすればよいでしょうか。
php のコード:
$row=$GLOBALS['db']->getone("SELECT * FROM ".$db_prefix."project where project_id='$id'");
if ($row){
$project['id']=intval($row['project_id']);//ピクチャ ID
$project['up_id']=intval($row['project_id' ]+1);
$project['down_id']=intval($row['project_id']-1);
$project['pro_name']=$row['proj_name'];
$project['pro_pic']=$row['proj_pic'];//ピクチャ名
$project['pro_declare']=$row['proj_declare'];
$project['pro_class'] =$row['proj_class'];//画像の種類は全部で2種類あります

}
$smarty=new Smarty();smarty_header();
$ Smarty-> assign('project',$project);
$smarty->display('projectdetail.html');

projectdetail.html のコード:

最初のページ

前のページ

< ! --{if $project.id==$min}-->
最後のページ

次のページ

主キー ID は自動的にインクリメントされるように設定されています。この時点でデータベース内の画像が削除された場合、ID は連続しなくなり、$project['up_id'] と $project['down_id'] が実行できなくなる可能性があります。正しい写真にリンクするには

-----解決策--------------------------
不連続な ID の場合、Simple
$project['up_id']=intval($row['project_id']+1);
$project['down_id']=intval( $row['project_id']-1);
代わりに、処理のために project_id の上下に 1 つのレコードをクエリする必要があります (合計 3 レコード)。
------解決策---------

話し合う

レコードを削除するときに、「update project set project_id=project_id-1 where project_id>'$project_id '」のように、現在削除されている ID より大きい ID を 1 つ減らすことを考えましたが、実行後に応答がありません。ID が自動的にインクリメントされるように設定されているためかどうかはわかりません

------解決策---------
話し合う

引用:

レコードを削除するときに、「update project set project_id=project_id -1」のように、現在削除されている ID より大きい ID を 1 つ減らすことを考えました。 where project_id>'$project_id'"; しかし、実行しても応答がありません。ID が自動的にインクリメントされるように設定されているのかわかりません。

実 ID を渡すだけでは十分ではないでしょうか。 ID を使用すると、...

------解決策----------------------
前の投稿: select * from table where id < ;現在の ID の順序 (ID による制限 1);

次の項目: select * from table where id > 現在の ID の順序 (ID による制限 1;)
------解決策---------
http://w3cschool.cn/php_file_upload.
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート