- ベストアンサー
phpファイルに書いたhtmlソースが表示される
- phpファイルに書いたhtmlソースがブラウザに表示されてしまう問題について
- 使用しているphpファイルにおいて、html部分のソースのみが表示されてしまう現象が発生しています。そして、処理結果も表示されません。
- 原因として考えられるのは、phpの記述(<?php・・・?>)以外のソースが処理されていないことです。解決策としては、正しくphpのタグを使用しているか確認し、phpファイルが正常に実行されるように修正することです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
もっと小規模なコードにして考えればわかりやすいのですが。 <?php $data = 'XXX'; $tempHTML = '<div id="datatable">' . $data . '</div>' . PHP_EOL; ?> <html><head></head><body> <div><?php echo $tempHTML; ?></div> </body></html> HTMLを囲う時は、シングルクォーテーションで。 PHP_EOLは改行を表し、ソース整形の為に付与しています。
その他の回答 (2)
- abacabu
- ベストアンサー率37% (250/663)
PHPの方の知識が無いのでわかりませんが HTMLは趣味でいじった経験が有ります。 あの・・・何のHTMLかうたってないので恐らくタグとして認識されていないと思いますよ。 あと他の方も言われていますが、冒頭にbodyで始まってheadで締めるという誤った記述があります。 あとフォーム内に=”これ無駄に多い部分が有る気がします。 <form name ="search_result" method="post action="./search_result_test.php"> 上記記述が何となくおかしいです。 methodの後の”の前の数と締めの数が合いません。 過去に書いた経験があるだけでだいぶ経つので忘れました… そういうところからタグという認識でなく文字列としてにんしきされているのではないですか?
お礼
回答ありがとうございます。 プログラムの中身を大幅に削って、どこに原因があるのかを調べてみると、 phpの処理の先頭に書いた header('Content-Type: text/html; charset=UTF-8'); が原因でした。そのせいでabacabuさんのおっしゃるように タグを正しく認識してくれなかったのだと思います。 説明に載せていない部分が原因で、 丁寧に説明していただいたのに申し訳ありません。
- noris02
- ベストアンサー率74% (56/75)
私には、意味不明です。。 <html> <body> ←?? <script type="text/javascript"><!-- function dataFunc(txt){ alert("search_result_data"); document.search_result.search_result_data.value = txt; ←??? } --></script> </head> ←???? <body> ←????? <form name ="search_result" method="post action="./search_result_test.php">← 「”」? <input type="hidden" name="search_result_data" value=""></input> </form> <script type="text/php">←?????? <?php 処理の記述 ?> </script> </body> </html>
お礼
回答ありがとうございます。 説明のためのソースに誤りが多々あり、意味不明なプログラムになってしまいました。今後は気をつけます。 無事解決いたしました。
お礼
回答ありがとうございます。 プログラムの中身を大幅に削って、かなり小規模なコードにして どこに原因があるのかを調べてみました。 するとphpの処理の先頭に書いた header('Content-Type: text/html; charset=UTF-8'); が原因でした。 ダブルクォートがタグに書かれているときは、シングルクォートでくくるんですね。参考になりました。 PHP_EOLも初めてしました。ありがとうございます。