静的HTMLを配信する以外に選択肢がない場合は、JavaScriptを介したAJAX呼び出しの使用を検討してください。
たとえば、jQueryでは次のようなことができます。
<html>
.
.
.
<body>
<!-- every other piece of html -->
<div id="your_php_results"></div>
<script type="text/javascript">
$(function() {
$.get('xxx.php', function(data) {
$('#your_php_results').html(data);
});
});
</script>
</body>
</html>
xxx.php
への相対パスまたは絶対URLxxx.php
です。
この実装でxxx.php
は、HTMLを生成する必要があります。HTMLは次に。に配置されますdiv
。jQuery $.get
-callが行うことは、最初のパラメーターで指定した場所を要求し、リソースによって生成されたすべての出力を取得することです。たとえば、これがphpファイルの場合:
<?php
//xxx.php
$data = array('Apfel', 'Birne', 'Banane'); //this is just example data
?>
<ul>
<?php foreach($data as $fruit) : ?>
<li><?php echo $fruit ?></li>
<?php endforeach; ?>
</ul>
次に、生成される出力は次のようになります。
<ul>
<li>Apfel</li>
<li>Birne</li>
<li>Banane</li>
</ul>
これはによってフェッチされ$.get
、実行後の結果のHTMLファイルは次のようになります。
<html>
.
.
.
<body>
<!-- every other piece of html -->
<div id="your_php_results">
<ul>
<li>Apfel</li>
<li>Birne</li>
<li>Banane</li>
</ul>
</div>
<script type="text/javascript">
// ...
</script>
</body>
</html>
JSがオプションでない場合は、iFrameバリアントが残ります。これは、IEを含むすべてのブラウザーでも機能するはずです。
編集:より良い例。