- 締切済み
urlの末尾に?p=1234と表示されているサイト
ホームページ制作を独学で学んでいます。 色々なサイトを参考にしているのですが、 その中にhttp://www.xxxxx.co.jp/xxxxx..html?p=1234のようなURLのサイトを見つけました。 html拡張子の後ろに?p=1234のような記号のような文字が入っていますが、 これはどのような仕組みでどのような技術を使っているのでしょうか? また、このようなサイトを作るにはどのようにすればよいのですか?
- みんなの回答 (4)
- 専門家の回答
みんなの回答
JavaScriptでカレンダーを表示するサンプル。 ひとつのHTMLファイルで、?以降を取得し処理してカレンダーが表示されます。 2000年4月 http://xn--u8jxb9ib9150b2px.jp/w/js/cal.html?2000&4 2014年10月 http://xn--u8jxb9ib9150b2px.jp/w/js/cal.html?2014&10 1985年12月 http://xn--u8jxb9ib9150b2px.jp/w/js/cal.html?1985&12 年月を指定しないと今月 http://xn--u8jxb9ib9150b2px.jp/w/js/cal.html サンプルのソース http://xn--u8jxb9ib9150b2px.jp/js/cal/
- yyr446
- ベストアンサー率65% (870/1330)
サーバー側のhtaccessで、拡張子.htmlに対しても、PHP等のページ生成が出来 るプログラム実行が可能なページをセットし、サーバー側で?以降のパラメー ターを処理するのが妥当ですが、 javascriptでも、 windows.location.searchプロパティで、?以降の文字列を取得する 事が出来ます。ページロード時に、windows.location.searchの値で もって分岐し、該当するページのURLをwindows.location.hrefに代入 すれば、そのページに遷移します。
- chalia
- ベストアンサー率64% (11/17)
HTMLのみの、静的サイトで実装するのは無理です。 動的サイトを可能とする、PHP等を勉強してみて下さい。 …ブログが一般的でわかりやすいですね。拡張子が.phpなだけで、月毎アーカイブ等のリンクをクリックすると「?p=」のような部分が出てくるはずです) ちなみに、参考とされたサイトのURLの拡張子が「.html」だったのは、 恐らく表示する拡張子を「.html」にする、というサーバー設定だと思います。 「.htaccess」というファイルで設定できます。
補足
回答ありがとう御座います。 PHP等を使って処理を行うのですね。 サーバー側の設定で元ファイルのphp等の拡張子をhtml拡張子に URLの表示を変更するということは知りませんでした。 教えていただきありがとう御座いました。 プログラミングは多少学習したことがあります。 その際はformタグを使ってactionで処理を飛ばして結果を表示しました。 ただ、今回はaタグを使って、例えばabc.html?id=1234に 移動したり、abc.html?id=1235に移動したりする処理をどのような方法で 行っているかを教えていただきたいです。 憶測で上記の例の場合だとabc.htmlというひとつのファイルの中で マーカーのような形でコードを管理して、リクエストしたidの部分だけを クライアント側に表示させる処理のように見えます。 (上記の例のabc.htmlというhtml拡張子の元のファイルは、教えて頂いた設定を サーバー側で行っていると仮定すると拡張子がphpやplかも知れません。) 引き続き回答をお待ちしています。
- be_silent
- ベストアンサー率39% (117/300)
URLの後ろに入っている文字の殆どは、webサーバーへと引き渡される因数です。 この数字を元にwebサーバー内で処理されて、適切な内容をクライアントに返して 因数「?=123」に対応したページを表示させることが出来ます。 例えば、今このページのURLは「http://okwave.jp/answer/new?qid=6363739」 「?qid=6363739」の数字がこの質問ページのIDで、これをクライアントがリクエストすることで サーバーは「qid=6363739の記事返せばいいんだな?」と判断。クライアントにこのページが 表示されるといった具合です。 詳しくはwebサーバー構築やプログラミングといった本に詳しく書かれています。
補足
回答ありがとう御座います。 サーバーで処理されてこのようなURLが返ってくるのは分かっているのですが、 その処理をどのようなプログラムでクライアント側からでサーバーに渡し、 サーバー内でファイルをどのように管理し、 どのような処理を施して、このような結果が返ってくるのかを詳しく知りたいです。 詳しく解説している本やサイトを紹介していただければ助かります。 私が知っている方法はxxxxx.htmlを1ページ1ページ結果を返すやり方しか 知りませんので、このようにhtmlファイルをidのような形で管理する方法を知りたいです。 引き続き回答をお待ちしています。
補足
回答ありがとう御座います。 お返事が遅れてしまい申し訳御座いません。 教えていただいた処理の方法を調べていて返信が遅れました。 やはりPHP等のプログラムを使って処理を行う方法が一般的なようですね。 javascriptでこのような処理を行う方法も調べてみたのですが、 詳しい解説が載っているサイトを見つけることが出来ませんでした。 重ね重ね恐縮なのですが、PHPやjavascriptで このような処理の方法を詳細に解説しているサイトや本など があれば教えていただけますでしょうか? 宜しくお願い致します。