• 締切済み

DB内のデータを指定した分のみ表示させたい

DB内に登録されている100個のデータを表示させたいです。 表示のさせ方は、1~100番目のデータそれぞれを別々にリンクして 例えば、58番目のリンクをクリックすると 58番目のデータが表示されるページに飛ぶようにしたいです。 1つ1つ手作業で、1番目のリンクはDB内の1番目のデータにリンクするようにHTMLで組むと 手間が大変なので、PHPで自動的にリンクするようにしたいです。 ちょっと説明がうまくできませんが 宜しくお願いします。

みんなの回答

  • tom951
  • ベストアンサー率30% (29/96)
回答No.4

まずDB側はLIMITを利用する。 ただし使用するDBによってはLIMITが使えないDBもある。

  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.3

「URLにリンクURLに付与させる方法」の意味があいまいでよくわかりません。 <a href="http://hoge.com/detail.php?id=1">リンク1</a> <a href="http://hoge.com/detail.php?id=2">リンク2</a> <a href="http://hoge.com/detail.php?id=3">リンク3</a> <a href="http://hoge.com/detail.php?id=4">リンク4</a> ...... <a href"http://hoge.com/detail.php?id=5">リンク100</a> と100個書くのが面倒だという意味でしょうか?

phptarou
質問者

お礼

ご回答ありがとうございます。 説明不足ですみません。 おっしゃる通りリンクを1つ1つ書いていくのが面倒なので 何か方法はないかと思っていました。

noname#87667
noname#87667
回答No.2

>URLにリンクURLに付与させる方法をもう少し詳しく教えていただければと思います。 貴殿は「自力で調べる」という手段をなぜ取らないのでしょうか。厳しいようですが、この部分については練習問題として与えますので、自力で考えてください。 ヒント: DBからデータを引っ張り出してデータを表示することはできるのですよね? ということは、for文で100個のデータを表示するロジックはできているはずです。つまり、そのfor文で使う元ネタに・・・

phptarou
質問者

お礼

もちろんその手段をとったのですが、 自分の知識が乏しいせいか、適切なキーワードで検索できず 成果も挙げられなかったため質問させていただきました。 DBからデータを引っ張り出して表示させることは出来ます。 for文について調べてみます。ありがとうございます!

noname#87667
noname#87667
回答No.1

オーソドックスなのは、auto incrementでユニークNoを付与して、それをリンクURLに付与することでしょうね。 e.g. http://hoge.com/detail.php?id=xxx たぶん他にも方法はあると思いますが、行き着くところはデータを一意に決定付けられるカラムを使うということになるでしょう。上記のauto incrememtによる自動付番はもっともポピュラーな例です。 余談ですが、テーブル設計をする際、使用の有無に関わらず、必ず連番を格納するカラムを作った方がよいです。データに一意性を持たせることができるため、今回のようなケースにも柔軟に対応できるので、今後の設計に役立ててください。

phptarou
質問者

お礼

ご回答ありがとうございます。 auto incrememtによる自動付番は行なっているのですが そこからどうやってリンクさせるのかいまいちわかりません。 http://hoge.com/detail.php?id=xxx このようにURLにリンクURLに付与させる方法をもう少し詳しく教えていただければと思います。 宜しくお願いします。

関連するQ&A