如果您别无选择,只能提供静态 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
是 的相对路径或绝对 URL xxx.php
。
在此实现中,xxx.php
必须生成 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。
编辑:更好的例子。