我有一个应用程序需要将数据从PHP文件提供回网页。
我可以轻松地为图像执行此操作,因为我使用<IMG>
标记,其中'src'
是PHP页面的URL,然后使用readfile()
来返回图像。它很棒。
但是我在尝试使用嵌入的HTML标记返回直接文本时遇到问题。
我可以使用以下方式发送数据:
header('Content-type: text/html');
ob_start();
echo $data;
ob_flush();
ob_end_clean();
$ data包含一串HTML,例如:“We have 100's of <strong>GENUINE</strong> Men
”
但我很难找到合适的HTML TAG,例如:
对于我使用的图像:
<img border="0" alt="" src="http://mydomain.com/test/index.php?element=2"></img>
目前我用过的文字:
<object id="page" type="text/html" data="http://mydomain.com/test/index.php?element=1">
</object>
但该对象的问题是虽然它接收HTML格式的文本很好,<object>
标签不好用,因为我必须为宽度等设置一个类。
我真的需要一种浏览器方式来简单地渲染我发送的内容,而不是别的。
答案 0 :(得分:1)
在输出前设置标题,默认情况下如果没有指定Content-Type
标题,PHP会将其发送为text/html
使用以下方法覆盖它:
// Headers are always set before any output
header("Content-Type:text/plain");
ob_start();
echo $data;
ob_flush();
ob_end_clean();
答案 1 :(得分:1)
好的,我不知道为什么不使用PHP本身将HTML包含在原始HTML文件中,但iframe如何?
<iframe src="./something/to/include.html?element=potassium"></iframe>
或者,如果服务器支持,您可以使用SSI include:
<!--#include file="./something/to/include.html?element=potassium" -->
或者,如果你想使用jQuery(或者你还在使用jQuery),你可以这样做:
<script type="text/javascript" src="jquery.js"></script>
<script>
$(function(){
$("#whereToPutIt").load("./something/to/include.html?element=potassium");
});
</script>