質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

2708閲覧

複数ページがあるwebサイトにおいて、ページの表示の仕方

toto654

総合スコア39

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2019/01/04 12:36

複数ページがあるサイト

メインのwebページがあり、そこから例えば「商品詳細のページ」、「チーム紹介のページ」、「お問い合わせフォーム」のページなどに飛べるようになっているサイトがあったとします。
その場合のページの表示方法について、教えてもらいたいです。

HTML,CSS,PHPの本を2冊読んでこれからサイトを簡単に作って見ようかなと思った程度の技術です。JSも勉強していくので,今回のお題に関連してたら,絡めて簡単に教えてもらえたら嬉しいです。

例えばメインのページから「お問い合わせのページ」に行く際に、私が考えられる方法は、

1.それぞれのページを作ってmain.php , contact.php <a>で飛ぶ先を指定する。

2.大きな枠組みでmain.phpを作っておいて「お問い合わせページ」が呼ばれたら、そのページ内に関数や変数を用いて表示する。この考えはponksoftの会員制サイトの作成を見ました。参考にして頂けると幸いです。

3.それともまた別の方法なのか。

説明不足だったら都度足していきますので、回答お願いします。


試したこと

以前にHTMLを学習した頃に、簡単にサイトを作成して(この時は、1ページずつ作って<a>で指定して飛ばしてました)、公開・検索したところドメインは一緒だけどばらばらのサイトみたいになってしまい、上手に行きませんでした。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

フレームワークにおける”ルーティング”の考え方を学ばれたほうが良いかもしれません。
基本は最上位ルートのindex.phpにアクセスを集めておき(.htaccessで設定)、URLを分解し、「このURLだったらこのコントローラを(このパラメータを渡して)利用する」といった考え方です。それでいうと2に近いかもしれませんね。
2で提示されている参考先サイト自体がまさにその考え方を採用しています。

teratailもそうですね。teratailもPHPフレームワークが採用されています。
この質問URLから利用される機能(コントローラ)が決まっています。最後の数字を質問IDとすればその部分はパラメターとしてコントローラに渡っていると想像できます。

投稿2019/01/04 12:41

m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

toto654

2019/01/04 13:01

上記の回答を参考にしながらまた進めて行きたいと思います。丁寧な回答ありがとうございました!
m.ts10806

2019/01/04 13:04

解決のヒントとなったようで何よりです。 なんというか、ある程度基礎的なところとオブジェクト指向をおさえられたらフレームワークに移行するのも1つの方向性です。
toto654

2019/01/04 13:16

それは、Laravelでいいんでしょうか? フレームワークにあまり詳しくないです。。
m.ts10806

2019/01/04 13:19

私のほうからは特に「これがいい」というのは出せません。 好みもありますし、それぞれ学習コストも違います。 「ルーティングを採用しているフレームワーク」であればおおよそやりたいことは実現できると思います。 何を要件とするかは時と場合によります。「なるべく最新のPHPで構築可能なフレームワーク」であれば何でもいいのではないでしょうか。 teratail自体は少し前のCakePHPで構築されているようです(時々でるエラー画面より)
toto654

2019/01/04 13:33

なるほど。回答ありがとうございます。もう一つだけ回答おねがいします。 >>なんというか、ある程度基礎的なところとオブジェクト指向をおさえられたらフレームワークに移行するのも1つの方向性です。 先ほどこのように回答をして頂きましたが、PHPにおいてフレームワークが占める割合はどの程度ですか?フレームワークがなければ基礎がおおよそできても何もできないのか。基礎はある程度で良いのか。 プログラミングを学習する上で1言語目なので、まだまだプログラミングの全体像が見えてなく形あるもの(webサイトを目標にしてます)を作っていく上でこの比率は重要かなと思いました。
m.ts10806

2019/01/04 13:53

んー。「Webサイト」ってすごく曖昧な表現なんですよね。 html1枚でもきちんとテーマをもって運用されていれば「Webサイト」ですし。 フレームワークも、もっといえば言語も1つのツールでしか過ぎませんので、 その道具をどれだけ使えるかにかかってはきます。 正直なところ「あるフレームワークにおける開発の仕方」を知っていれば、開発はできます。 でも「フレームワークしか知らない」となるのは非常にマズいです。 中にはそのフレームワークの持っている機能だけでは対応しきれないこともあるので、 その場合は元の言語であるPHPの根本的な技術知識は必要ですし、場合によりWebのもっと深い知識が必要になることもあります。 PHPが1つ目ということであればいきなりフレームワークに入るよりは、もっと基礎のところをじっくり学んで、オブジェクト指向や最新のPHPの機能をきちんと理解して使いこなせるようになってからでも遅くはないと思います。 ご自身が何を目指しているか(仕事か個人か趣味か)によっても方向性は違いますが、「Web開発」自体は概念は同じで、「ロジック」という観点からすると言語は関係ありません。 まずは何か実現するというときに「こうすればできる」というのを”考えて”作れるようになってください。 何かを実現するための唯一の方法というのはありませんので、色んな方向性から実現できるように考えられるようになるのが理想ですね。 teratailで回答してみるのも技術力をあげる1つの手法です(私も結構それで利用しています)
m.ts10806

2019/01/04 13:54

いろいろ書いているうちに滅茶苦茶な文章になってしまいましたね。 わからないところだらけかもしれませんが、要約すると「考えることは大事」ですかねー・・
toto654

2019/01/04 14:54

ベストアンサーに選ばせて頂いた後にも関わらずたくさん回答して頂き感謝しています。現段階では、焦らずに基礎を固めて行こうと思います。teratailでの"回答"よりは、今はまだ"質問"をして後々回答していけるようになれればと思いました。質問欄でまたお目にかかることもあるかと思いますが、その際はよろしくお願いします。
m.ts10806

2019/01/04 21:13

頑張ろうとしてる人を見るとついついお節介してしまいますね。 まあ、中には回答はしないまでも回答するつもりで回答作ってみて後についた回答と答え合わせするような使い方をしてるユーザーもいるようで(どこかの記事に回答者になる前にという形で書いてあるのを見ました) それもまた勉強になることだと思います。 おそらく質問者としては問題が解決すれば余程のことがない限り回答者が誰であろうと関係はないので、 分かるものがあれば回答作ってみたりちょっと考えてみたりというのもありと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問