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

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

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

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

Q&A

解決済

2回答

1367閲覧

PHPでの共通部分の構図?

退会済みユーザー

退会済みユーザー

総合スコア0

PHP

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

0グッド

0クリップ

投稿2017/03/03 12:11

初歩的な質問ですいません。
PHPで変更するコンテンツのみロードする構図はどのようになりますか?
言葉がうまく出てきませんが、Railsでいうところのapplication.html.erb内のyieldのような関係性なんですが・・・

例えば、下記とあるとします。

php

1... 2<header> 3 <a href="hoge.php">HOGE</a> 4 <a href="fuga.php">FUGA</a> 5</header> 6<body> 7メインコンテンツ 8</body> 9<footer></footer>

この場合共通する箇所はheaderfooterです。
で、仮にリンクHOGEをクリックして、メインコンテンツのみロードしたい場合にはどのように作成するのでしょうか?

headerfooterで切り離したファイルを作り、読み込むファイルhoge.php等の中でincludeする感じでしょうか?

php

1#-header.php- 2<header> 3 <a href="hoge.php">HOGE</a> 4 <a href="fuga.php">FUGA</a> 5</header> 6<body>

php

1#-footer.php- 2</body> 3<footer></footer>

例えばこういうファイルを作り、hoge.phpで読み込む。

php

1#-hoge.php- 2<?php include("header.php") ?> 3 4<h2>HOGEHOGE</h2> 5<p>hogehogehoge...</p> 6 7<?php include("footer.php") ?>

でも、これだと、結局全部ロードしちゃいますよね?(´・ω・`)

分かりにくくてすみませんが、ご教授お願いします。

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

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

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

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

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

guest

回答2

0

ベストアンサー

phpはあくまでサーバー側で動作する言語です。
phpで変更箇所のみといっても、
サーバーはhtmlの完成物を出力しなければならないので、
おっしゃる通り全部読み込みますね。

コンテンツの変更箇所のみ再読込しようとすると、
htmlをdom操作するjsを書けばなんとかなります。
(荒く言うと、body要素の内側を削除して、読み込んだhtmlをbody要素の内側に流し込む、みたいな動作。)

でも、たいへん煩わしくなるので、ふつうは
フロントエンドjsライブラリの類を駆使すると楽に行ける気がします。

ここ数年前から2015/5までのモダンフロントエンドを総まとめしてみた - Qiita

まとまっているのでお好きなものをどうぞ。

投稿2017/03/03 12:22

編集2017/03/03 12:24
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

退会済みユーザー

退会済みユーザー

2017/03/03 12:59

なるほど。 ありがとうございます。 JSで書き換えるという方法が有効なんですね。 フロントエンドjsライブラリは、1日2日でとっかかるには敷居が高そうです(´・ω・`) 数が、少なければJS書き換えで対応できそうですが、多ければ・・・・ 書き換えだけは参考サイトの方法で対応できそうですので、自身がレベルアップするまではこちらで対応しようと思います。 参考サイト:https://ghweb.info/post-3178.html
guest

0

みんな大好き iframe

アドレスバーのURLを書き換える方法があるそうです。

投稿2017/03/03 12:51

Zuishin

総合スコア28660

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問