2017-05-21 10 views
0

私はウェブベースの言語を使っていて、サーバー/クライアント側のことを理解しようとしていました。hello worldからの余計な出力javascriptページ

このindex.htmlファイルは2か所に格納されています。

1)C:\ MAMP \ htdocsに\テスト\

2のindex.html)C:\テスト\私を混乱させる何

<!DOCTYPE HTML> 
<html> 
    <body> 
     <p>Hello from html!</p> 
     <script> 
      document.write('<p>Hello from javascript!</p>'); 
     </script> 
     <?php 
      echo "<p>Hello from php!</p>"; 
     ?> 
    </body> 
</html> 

index.htmlに、出力が

であるということです
Hello from html! 

Hello from javascript! 

Hello from php! 
"; ?> 
私は(MAMPを経由して)私は、Apacheインストールされている末尾の "; ?>

を取得する理由を私は理解していない

、 d私はWebブラウザでサーバーからindex.htmlファイルを開くと、http://localhost/Test/index.htmlというPHPが実行され、file:///C:/Test/index.htmlでWeb broswerで直接開くと、phpが実行されないことを期待していました。しかし、どちらの方法でも同じ出力が得られます。

+0

index.htmlの拡張子をindex.PHPに変更します。 –

答えて

2

拡張子が.htmlのファイルの中にある場合、サーバーはPHPを解析しません。ブラウザは、これがHTMLタグであると仮定しています。

<?php echo "<p> 

そして、それ以降はすべて印刷しています。ファイルをindex.phpに変更すると、探している結果が得られます。

+0

ありがとう、たくさん明らかに –

1

問題は、両方のケースでPHPが実行されないという問題です。

あなたがHTMLコードを見て、生成した(これは単に任意のMAMP/XAMPを実行していないファイルを開く私です)、PHPが全く実行されなかったことを確認するために簡単です:

enter image description here

この問題を解決するには、拡張子を.phpに変更し、MAMPを実行していることを確認してください。