0

include()関数を介して別のページを使用するページがあります。この外部ページを要求して使用するページには、echo関数を使用した出力だけでなく、いくつかのhtmlが埋め込まれています。これが私が言及しているものの例です。

Apple.phpのページには次のものが含まれています。

 <html>
 <head></head>
 <body>

<h1>I have some content here.</h1>

 <div id="format" style=" width:20px; height:20px;"><?php include("Orange.php") ?></div>

 <h2>Some more content here.</h2>
 </body>
 <html>

Orange.phpのページには次のものが含まれています。

  <?php
     $astringA='blue';
     $astringB='berry';
     include("someExternalPage.php");
     echo "fruit is ".$astringA.$astringB.$externalVariable;
     ?>

Apple.phpをブラウザで表示すると、本体の上部(include関数の上の部分)のみが表示され、divボックスの下のすべてが失われ、空白で埋められます。さらに、インクルードされたファイルは、divボックスが持つすべてのスタイルを無視します。Orange.phpについても同じことが言えます。include()関数の下のすべての出力が失われます。含まれているファイルが希望のスタイルに準拠し、残りのコンテンツをページに出力し続けるように、これを修正するにはどうすればよいですか?

また、echo "> h2>ここにもう少しコンテンツがあるなど、phpを使用してページの残りの部分を出力しようとしても気づきます。"; (ここでコードを説明するために、上記の行の最初の ">"を意図的に反転しました)インクルードは現在のページよりも優先されるため、出力は表示されません。

4

4 に答える 4

3

ここに致命的なエラーが隠されているようなにおいがします。

error_reporting(E_ALL) を使用してみて、ページを実行してエラーがあるかどうかを確認してください...

于 2012-06-20T17:10:41.913 に答える
0

someExternalPage.php が実際に外部ファイルである場合 (つまり、 http://example.com/test.phpなどのファイルをインクルードしている場合)、php.ini で allow_url_include が有効になっていることを確認する必要がある場合があります。

または、someExternalPage.php が存在することを確認してください。

于 2012-06-20T17:57:02.230 に答える
0

Apple.php にインクルードした後にセミコロンがないようです。ロードしようとすると、出力が表示されますOrange.phpか? 流れが壊れている場所を正確に確認するのに役立ちます。

于 2012-06-20T17:13:00.880 に答える
0

someExternalPage.php または $externalVariable に問題があります。

于 2012-06-20T17:13:39.647 に答える