PHPを理解していない者ですが見よう見まねでphp my adminからデータを取り出し
ホームページへ掲載するまではなんとかできました。
ただ、ページングを作るとなるとハードルが高くて困っています。
ネットで検索して探していますがphp my adminと連動してページングが書かれている記事も少ないようでした。
あっても現在使っているこのコードとかけ離れていて、
どこに何を足したら良いのか理解できませんでした。
このコードに少し加えて機能したら良いのですが根本的に書き方を変えないといけませんか?
できれば付け足すコードを書いていただけるとうれしいです。
現在のページングは
▼トップページから見ると
|2ページ目
▼2ページへ行くと
1ページ目へ | 3ページ目へ
と表示されています。これを、
1 2 3 >>10
このように3ページ分くらいは表示できるようにしたいのです。
どうかご教授下さい!
<!-- ページング -->
<?php if($page >= 2): ?>
<a href="index.php?page=<?php print($page-1); ?>"><?php print($page-1); ?>ページ目へ</a>
<?php endif; ?>
|
<?php
$counts = $db->query('SELECT COUNT(*) as cnt FROM ■■ WHERE ●●=\'りんご\'');
$count = $counts->fetch(); //1件のデータだけなので直接fetch
$max = ceil($count['cnt'] / 10); //ceilで少数点を切り上げて次ページへ
if($page < $max): //最大ページ数より小さければ"ページ目へ"を表示する
?>
<a href="index.php?page=<?php print($page+1); ?>"><?php print($page+1); ?>ページ目へ</a>
<?php endif; ?>
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
$page = ページ番号;
$num = 件数;
$num_per_page = ページ毎件数;
$disp_range = ページ表示範囲;
$pn = ceil($num / $num_per_page); // ページ数
$pc = max(1, min($page, $pn)); // 補正済みページ番号
$pa = max(1, $pc - floor($disp_range/2)); // 範囲内最小
$pb = min($pa + $disp_range - 1, $pn); // 範囲内最大
if (1 < $pa) 番号とリンク表示(1);
for ($i = $pa; $i <= $pb; $i++) {
_ if ($i == $pc) 番号表示($i);
_ else 番号とリンク表示($i);
}
if ($pb < $pn) 番号とリンク表示($pn);
PHPがのことが分からないので、
いまいち私にはこれをどこに入れたら動くのかが分からなかったのですが
Ogre7077様一人しか返答頂けなかったのでベストアンサーとさせて頂きました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHP MySql ページング 2 2022/09/20 06:38
- PHP php my adminより取り出したデータ表示 2 2022/06/15 11:56
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP ランキングを表示する際の画像の大きさを固定することは可能でしょうか? <?php if ( has_ 1 2022/07/21 14:55
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP PostgreSQLからCSV形式でエクスポートする際にカラム内の改行をとる方法 1 2023/02/22 10:05
- PHP コメント機能に返信欄を矢印で追加したい 1 2022/05/09 21:17
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- PHP PHPの変わった閉じタグの必要性と意味を教えてください。 1 2022/08/28 15:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
これの対応OSを教えて下さい。p...
-
*.php、*.php3、*.phtmlの違い
-
服にかいた油性ペンがにじまな...
-
テレメールとは?
-
gdとgd2の違い
-
libphp5.so がないと?
-
PHPでメールを受信するには?
-
PEAR(Image_QRCode)のエラー
-
phpからoutlook起動
-
【PHP】tmp_nameの命名規約につ...
-
フォームで戻った際に入力済み...
-
PHPINFOが見えない
-
onedrive にexcelファイルをア...
-
フォントの色を変えるには?
-
バッチを用いたフォルダの自動移動
-
phpとaspの違いについて
-
form actionで二つ送信先を指定...
-
phpで画像がどうしても文字化け...
-
透過PNGが透過されない!!
-
PHP8を使うと、大量のWarningが...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.htaccessにphp_valueが使用できな
-
フォームで戻った際に入力済み...
-
phpの中でphpを書けないか
-
<A href ~ と一緒に値を渡すには
-
header(Location:~)で$_SESS...
-
PHPで別PHPを呼び出す。
-
PHPからMSSQLへの接続結果の文...
-
これの対応OSを教えて下さい。p...
-
複数のPHPファイルを読み込むに...
-
*.php、*.php3、*.phtmlの違い
-
東京都の高校の九段高校ってど...
-
HYのAM11:00のラップの部分の歌...
-
PHPINFOが見えない
-
<大至急!>ご教授願います。
-
リンクのクリック数をカウンタ...
-
服にかいた油性ペンがにじまな...
-
さくらインターネットでメール...
-
libphp5.so がないと?
-
mamp環境でのcronの使い方で困...
-
PHPExcel に関して
おすすめ情報
Ogre7077様
$page = ページ番号;
$num = 件数;
$num_per_page = ページ毎件数;
$disp_range = ページ表示範囲;
の=以降は任意の数字を入れると良いということでしょうか?