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

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

ただいまの
回答率

90.51%

  • PHP

    20349questions

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

  • Apache

    1818questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。

PHPのファイルがブラウザ上で表示されません。

解決済

回答 2

投稿

  • 評価
  • クリップ 0
  • VIEW 258

punchan36

score 4

PHPのファイルがブラウザ上で表示されません。
当方、現在まではHTML & CSSのみ使用しておりました。

・PHPのインストール及び動作確認は済んでおります。
コマンド上にて
>php -v
PHP 5.5.0 (cli) (built: Jun 19 2013 16:13:16)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0-dev, Copyright (c) 1998-2013 Zend Technologies
の文言が確認できました。
参考:https://webkaru.net/php/windows-php-confirmation/

・またApacheのインストール、動作確認も済んでおります。
http://localhost/ にて、"It works!"のメッセージが確認出来ました。
参考:https://webkaru.net/php/windows-apache-confirmation/

・拡張子が.htmlのままでもPHPファイルを読み込めるようにするため、
<FilesMatch "^php.html$">
AddType application/x-httpd-php .php .html
</FilesMatch>
こちらのコードを.htaccessに記述致しました(ファイル名は~php.htmlとしています)。

ですが、画像にありますように「年齢」等の箇所をクリックしても「選択してください」の文言しか表示されず、PHPで記述した部分(6-100歳までのオプション)が表示されません。
恐らくPHPの読み込みにどこかで失敗しているのだと思われるのですが、調べても対処の仕方が分かりませんでした。

PHPを使用できますよう、どなたかお知恵を拝借頂けましたら幸いです。

※今回使用致しましたコードは、テスト用として、プログラミング学習サイトで使ったものをそのまま引用しております。

イメージ説明

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Progate</title>
  <link rel="stylesheet" type="text/css" href="stylesheet.css">
</head>
<body>
  <div class="header">
    <div class="header-left">Progate</div>
    <div class="header-right">
      <ul>
        <li>会社概要</li>
        <li>採用</li>
        <li class="selected">お問い合わせ</li>
      </ul>
    </div>
  </div>

  <div class="main">
    <div class="contact-form">
      <div class="form-title">お問い合わせ</div>
      <form method="post" action="sent.php">
        <div class="form-item">名前</div>
        <input type="text" name="name">

        <div class="form-item">年齢</div>
        <select name="age">
          <option value="未選択">選択してください</option>
          <!-- for文を用いて6歳から100歳までをoptionで選べるようにしましょう -->
          <?php
            for ($i = 6; $i <= 100; $i++) {
              echo "<option value='{$i}'>{$i}</option>";
            }
          ?>
        </select>

        <div class="form-item">お問い合わせの種類</div>
        <?php
          $types = array('Progateに関するお問い合わせ', 'Progateに対する意見', '採用に関するお問い合わせ', '取材・メディア関連のお問い合わせ', '料金に関するお問い合わせ', 'その他');
         ?>
        <!-- この下にselectタグを書いていきましょう -->
        <select name="category">
          <option value="未選択">選択してください</option>
          <?php
            foreach ($types as $type) {
              echo "<option value='{$type}'>{$type}</option>";
            }
          ?>
        </select>

        <div class="form-item">内容</div>
        <textarea name="body"></textarea>

        <input type="submit" value="送信">
      </form>
    </div>
  </div>

  <div class="footer">
    <div class="footer-left">
      <ul>
        <li>会社概要</li>
        <li>採用</li>
        <li>お問い合わせ</li>
      </ul>
    </div>
    <div class="like-box">
      <iframe src="https://www.facebook.com/plugins/likebox.php?href=https%3A%2F%2Fwww.facebook.com%2Fpages%2FProgate%2F742679992421539&amp;show_faces=false" scrolling="no" frameborder="0" style="border:none; overflow:hidden; height:300px;" allowTransparency="true"></iframe>
    </div>
  </div>
</body>
</html>
  • 気になる質問をクリップする

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • papinianus

    2018/06/28 17:12

    ソースを表示はどうでしたか?

    キャンセル

  • papinianus

    2018/06/28 17:14

    あと、環境は?windows?XAMPとかでインストールしてますか?

    キャンセル

  • punchan36

    2018/06/28 18:25

    はい、「ソースを表示」ではPHPコードがそのまま出ています。環境はwindows7で、この件に関しましてはPHPとApacheのインストールのみで格闘しております…。

    キャンセル

回答 2

+2

http://localhost/ にて、"It works!"のメッセージが確認出来ました。

上記から、ローカルPCに環境構築していかれているのだと思います。
ローカル環境で確認したいのであればURL取得(おそらくドメイン取得のことを仰っているのだと思いますが)は不要です。

Apacheのconfファイル(httpd.conf)のDocumentRootに指定されているディレクトリが「ルート」になります。
ローカル環境ではhttp://localhost/というURLでブラウザからアクセスしたときに実行されるディレクトリです。
つまりDocumentRoot配下にファイルを置いてそこからのパスでブラウザアクセスすればOKです。

DocumentRootxxx/xxx/htdocs/となっているとして置いたファイルがxxx/xxx/htdocs/test.phpとしたらhttp://localhost/test.phpというURLでブラウザからアクセス。
またxxx/xxx/htdocs/test/test.phpとしたらhttp://localhost/test/test.phpというURLでブラウザからアクセス。
です。

.htmlのままPHPの表示もできるようにしておけば後々楽

あまりそうは思いません。というか関係ありません。
初学者であれば「PHPプログラムを実行している」という実感も必要ではないでしょうか。
いきなりどこで見たか分からないテクニックを導入するよりも、まずは.phpできちんとphpプログラムを実行して学習を進めてください。
そのうち.phpどころか.htmlすらもアクセス時には不要になります(フレームワークとかその辺の話なので、またその時に)

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/28 18:28

    ご回答有難うございます。
    勉強する事がたくさんで、まだ解決には至っておりません。夕食を挟んだ後、また出来るまで格闘します。
    初学者の私にアドバイスまでしてくださり有難うございます!いずれ勉強する事になると思いますので、頭の片隅に入れておきます。

    キャンセル

  • 2018/06/28 18:52

    大事なことなのでもう一度言っておきます。

    まずは.phpできちんとphpプログラムを実行して学習を進めてください。

    キャンセル

  • 2018/07/03 16:29

    大変遅くなりましたが、phpinfo()を表示させるまで辿り着くことが出来ました!有難うございました。
    はい、.phpで表示できるようやって参ります(インストールは成功したのにまだソースしか表示されない為、また格闘が始まりました。)

    キャンセル

  • 2018/07/03 16:32

    ん?
    http://で、~.phpでアクセスしていれば問題ないはずですが。
    .htmlでPHPコードを動かすメリットって皆無ですよ。

    キャンセル

  • 2018/07/03 16:33

    強いてなら、私であれば全部AjaxでPHPにアクセスして利用します。
    JavaScriptのコードは長くなってしまいますが、動きはかなりつけられますし。

    キャンセル

  • 2018/07/03 16:33

    > .htmlでPHPコードを動かすメリットって皆無ですよ。
    激しく同意w
    SEOに強いとかいまだに信じている人いるんでしょうかね?

    キャンセル

  • 2018/07/03 16:35

    .phpという表示が嫌だからとかいうのがあるんでしょうね。
    ルーティング機能のあるフレームワークにしてしまうか、.htaccessで制御してURLで振り分けるようにすれば拡張子という概念なくなるんですけどね。

    キャンセル

  • 2018/07/03 16:37

    urlは依然取得出来ていない為、file:///C:~になっております。今回はmts10806様のアドバイス通り、~.phpでやっているのですが…なぜかソースのみが表示されてしまいます。
    php.iniも色々なサイトさんを参考にして編集したのですが。。
    (例えばこちら https://saku.io/configuring-default-php-ini-file/ )

    キャンセル

  • 2018/07/03 16:40

    それ、phpファイルを直接ダブルクリックで開いているでしょ?
    そりゃダメだよ。
    ブラウザを空のまま開いて、アドレスバーにURLを入力しましょう。

    キャンセル

  • 2018/07/03 16:42

    回答読まれました?
    > ローカル環境で確認したいのであればURL取得は不要です。

    ローカル環境にApacheを入れてPHPを入れてApacheを起動して
    http://localhost/~~.phpにブラウザからアクセス
    で終わりですよ。

    XAMPP使う場合は下記
    https://haniwaman.com/local-apache/
    https://itsakura.com/php-xampp

    キャンセル

  • 2018/07/03 16:44

    一応、「ブラウザアクセスすればOK」と回答に書いたんですが・・・。
    伝わってなかったようなので追記しました。太字で。

    キャンセル

checkベストアンサー

+1

Apache単体、PHP単体では動いているように見受けられますが、

https://www.adminweb.jp/apache/php/index4.html

のページにあるようなサンプルページを置いてPHPの設定情報が表示されますか?
表示されなければ、

https://webkaru.net/php/setup/

の「PHPとApache」の項はすべて行いましたか?

https://webkaru.net/php/windows-apache-php-confirmation/

以降の作業をやっていないようであればまずはそちらを試してみたらよいかと思います。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/06/28 18:21

    ご回答有難うございます。
    まず最初の「PHPの設定情報の表示」ですが、表示されませんでした(記述した簡単なコードがそのまま表示されるのみ)。

    (「PHPとApache」の項ですが、こちらは質問文でもご説明した通り、ApacheとPHPの個別動作確認まで全て確認いたしました。)

    そこでご紹介いただいた三番目のページの内容にトライしたのですが、httpd.confファイルの末尾に記載されているコードを追加した所、今度はApacheが再起動できなくなりました。
    きちんとコピペし、何度も試したのですが…。コードに問題があるのでしょうか?

    一つ一つの質問で申し訳ありません。今日一日この問題と格闘しておりまして…。

    キャンセル

  • 2018/06/28 18:37

    コピペが常に正しいとは限りません。環境が違うので。エクスプローラからc:/php/php5apache2_4.dllが確認できますか?
    そしてphp5でapache24であってますか?

    キャンセル

  • 2018/06/28 22:01 編集

    >そこでご紹介いただいた三番目のページの内容にトライしたのですが



    >(「PHPとApache」の項ですが、こちらは質問文でもご説明した通り、ApacheとPHPの個別動作確認まで全て確認いたしました。)

    の一部ですよ。(まだ続きもありますよ)
    いずれも質問に上げられていた参考ページの前後の内容で、ApacheとPHPを連携させるための一連の作業をつまみ食いしているので必要な手順が漏れているのだと思います。

    papinianusさんがご指摘されているようにコピペすりゃいいってものでもありません。記事が古ければ同じ操作をしても同じバージョンにならないこともあります。
    コピペで変えようとしている中身を理解しながらはじめからやり直してみては?
    歯抜けの状態で動くようにするより変なところで躓かない分、やり易いと思いますよ。

    キャンセル

  • 2018/06/28 22:05

    確認できます!ただしPHPは7ですので、c:/php/php7apache2_4.dllが確認出来ました。
    メッセージ本当に有難うございます。

    キャンセル

  • 2018/06/28 22:10

    sysjojo様、有難うございます。
    明日もう一度初めから丁寧にやり直してみようと思います。
    お見苦しい点も多々あったかと思いますが、アドバイスして下さり有難うございます!

    キャンセル

  • 2018/06/28 22:29

    PHP7apahe2_4.dllしかないのに、コピペして、php5って書いてたらエラーになります(多分、そんなファイルないよというエラー)。
    環境にあった参考資料を探すか、資料に合わせてあえてphp5を入れるかどちらかですね。

    キャンセル

  • 2018/07/03 16:27

    大変遅くなりましたが、phpinfo()を表示させるまで辿り着くことが出来ました!有難うございました。

    キャンセル

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

  • ただいまの回答率 90.51%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

  • 解決済

    ZendFrameworkのsetOptionsに文字列での選択肢を追加したい

    前提・実現したいこと 実現したいことは、よくあるselectタグのoptionに文字列での選択肢を追加したいと考えています。 選択肢としましては、MrとMisの二つから選択でき

  • 解決済

    self::と$this->の使い分け

    外部のパートナー企業から納めて頂いたコードで、疑問があります。 前提 PHP5 ZendFramework1 普段はCakePHPを使っている :-)

  • 解決済

    アンケートフォームのバリデーションチェックについて

    前提・実現したいこと Atomを用いてPHPとHTMLを使ったアンケートフォームを作っており、 「アンケートと同じページでエラーチェックを行い、 エラーはその場に表示する」 という

  • 解決済

    [PHP]POSTに失敗してしまいます

    PHP勉強中の者です。現在自動販売機作成ツールの管理画面を作成しているのですが、POSTの処理につまずいてしまっています。 ご教授頂ければ幸いです。 現在作成しているコードは以下の

  • 解決済

    phpでXMLの内容を修正

    PHPを使い、入力フォームから商品情報を入力してXMLに入れ、そのXMLの内容を別ページで修正し、修正ボタンを押すと「修正しました」というページに行くというものを以下のように作った

  • 解決済

    検索結果ページのnullの場合の条件分岐について

    勤務地等何かを選択すると、 検索結果が表示されるのですが、全件表示がうまくいきません。 問題:何も選択せずに検索ボタンを押すと、 0件と表示される。 試した方法 ●$_PO

  • 解決済

    PHPで入力フォームのエラーを一気に出さないようにするにはどうしたら良いでしょうか?

    PHPで入力チェックを行っています。 新規登録フォームで空欄のまま、送信ボタンを押すとエラーが表示されるように実装しました。 しかし、エラー表示の下の3つまで表示されてしまいます

  • 解決済

    PHPとクラスプロパティ

    Zend FrameworkのZend_Config_Iniってのがありますが これでiniファイルに書いたプロパティが使えるようになってます。 ; 運用環境の設定データ [p

同じタグがついた質問を見る

  • PHP

    20349questions

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

  • Apache

    1818questions

    Apacheは、Apache HTTP Serverの略で、最も人気の高いWebサーバソフトウェアの一つです。安定性が高いオープンソースソフトウェアとして商用サイトから自宅サーバまで、多くのプラットフォーム向けに開発・配布されています。サーバーソフトウェアの不具合(NCSA httpd)を修正するパッチ(a patch)を集積、一つ独立したソフトウェアとして開発されました。