在<img/>中使用src来显示html

时间:2013-01-14 23:42:07

标签: php mysql image src

我正在使用&lt; img src =“logo.php”&gt;调用一个php页面,在显示实际的gif图像之前将一些东西写入数据库。我们称之为VERSION 1

在任何给定页面上,代码如下所示:

<a href="http://www.abc.com">
<img alt="Hi" src="http://www.abc.com/logo.php"/></a>

然后,logo.php看起来像这样:

// first update a database table with some relevant info

// then, output the logo image

header("Content-Type: image/gif");
echo file_get_contents("/path/to/image/logo.gif");

它工作得很好,(感谢我在这里回答的答案:Stack Question Answered

现在,我正在尝试创建一个完全相同的第二个选项,除了它显示一些html以及图像。我们称之为VERSION 2

在任何给定页面上,代码如下所示:

<a href="http://www.abc.com">
<img alt="Hi" src="http://www.abc.com/logo_html.php"/></a>

我想要这个其他文件,“logo_html.php”输出这样的东西

<p>Hello World</p>
<p>Some More html</p>
<img alt="Hi" src="http://www.abc.com/logo.gif"/>

我尝试将'echo file_get_contents'文件更改为一个简单的&lt; php文件p&gt; Hello World&lt; / p&gt;,但没有显示任何内容(只是浏览器找不到图像时得到的X.

如果这是我的“logo_html.php”文件,并将其更改为此文件,则在myfile.php中放入一些文本,我也没有结果。

header("Content-Type: image/gif");
echo file_get_contents("/path/to/file/myfile.php");

我需要在logo_html.php文件中更改哪些内容才能调出并显示图片,还有一些额外的HTML?

一如既往地感谢您!

3 个答案:

答案 0 :(得分:2)

除了图像二进制内容之外,您无法输出任何内容。图像标记的src属性接受二进制图像内容的地址,而不接受html。

所以最后的答案是:你做不到。

答案 1 :(得分:0)

您应该使用<iframe>。图像元素不能包含除图像之外的任何内容 - 浏览器会认为代码是图像数据的一部分,但因为它与mime类型不匹配(GIF图像必须以GIF89a开头,或者像那样),它会认为它已经坏了

同样file_get_contents("/path/to/file/myfile.php")返回php文件的内容。你可能想要加入它。

答案 2 :(得分:0)

你不能那样做。如果这是可能的,你会链接到我的图像,我会给你和图像以及一个窃取客户饼干的脚本标签;)。< / p>