• 締切済み

【PHP】ブログ記事の個別ページの作り方について

PHPを初めて1週間くらいの初心者です。現在ブログサイトを作っています。 サイトの階層を、 トップに記事一覧ページ(http://blogsite/index)をおき、 その下に、それぞれの記事詳細ページを作りたいと考えております。 http://blogsite/view/1 http://blogsite/view/2 http://blogsite/view/3 ・ ・ ・ という形にしたいのですが、上記のように、URLを自動的に生成する?方法が分からずにおります。 お教え頂けますと幸いでございます。 【補足情報】 ・CakePHPなどのフレームワークは使っておらず、PHPで一から書いております。 ・ブログ記事を登録する際、それぞれにIDを生成して登録しているので、それぞれの記事を呼び出す土台は出来ていると思います。

みんなの回答

  • t_ohta
  • ベストアンサー率38% (5292/13826)
回答No.1

WebサーバにApacheを使っていれば mod_rewrite とか使ってURLに書かれている数字をGETパラメータとしてPHPのプログラムに渡すか、パラメータの変換をせずに特定のPHPプログラムにリライトをかけてからプログラム内で$_SERVER["REQUEST_URI"]の中身を正規表現などで解析してIDを取り出します。 前者の場合は.htaccessファイルに RewriteEngine on RewriteRule ^view/([0-9]+)$ /view/blog.php?blog_id=$1 と書いてあげると、blog.phpの中では $_GET["blog_id"]で指定された数字が取り出せます。 後者の場合は.htaccessファイルに RewriteEngine on RewriteRule ^view/[0-9]+$ /view/blog.php と書いてあげるて、blog.phpの中では preg_match("/^\/view\/([0-9]+)$/", $_SERVER["REQUEST_URI"] , $matches); $blog_id = $matches[1]; で指定された数字が取り出せます。 ちゃんとテストしてないのでタイプミス等はなおしてください

関連するQ&A