我有一个奇怪的情况,PHP的工作方式与HTML不同。我不是一个网络程序员,只是乱搞。在HTML中我的图像看起来很好,在PHP中图像被破坏了。只有来自我的Dropbox https服务器的公共图像被破坏,来自http服务器的公共图像才会被破坏。
例如,我的localhost上有两个文件,abc.html和def.php。他们尝试显示两个图像,一个指向我的https图像,另一个指向Google徽标。
abc.html:
<img src='https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM'>
<img src='http://www.google.co.uk/intl/en_uk/images/logo.gif'>
def.php:
<?php
echo "<img src='https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM'>";
echo "<img src='http://www.google.co.uk/intl/en_uk/images/logo.gif'>";
exit;
浏览到abc.html可以完美地显示两张图片。浏览到def.php只会显示Google徽标,而其他图片则会损坏。
它不适用于Firefox,但有人告诉我它适用于Opera。
想法请:)
编辑:def.php输出:
<img src='https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM'><img src='http://www.google.co.uk/intl/en_uk/images/logo.gif'>
答案 0 :(得分:1)
我建议安装FireBug以查看服务器的返回响应。您可能会发现DropBox拒绝提供图像请求,其中包含来自以某些扩展名结尾的文件的引荐,例如.PHP。
这也可以解释普通HTTP的重复行为。
答案 1 :(得分:0)
这适用于我的Firefox 3.6版,图像显示效果非常好:
<HTML>
<HEAD>
<TITLE>My WebPage</TITLE>
</HEAD>
<BODY>
<img src="https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM" />
</BODY>
</HTML>
答案 2 :(得分:0)
试试这个:
<?php
echo '<img src="https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM">';
echo '<img src="http://www.google.co.uk/intl/en_uk/images/logo.gif">';
exit;
如果有效,那是因为html属性应该用双引号括起来,而不是单引号。也许有些浏览器会原谅,有些则不会。
答案 3 :(得分:0)
一个明显的观察,但你的def.php有关闭的php标签吗?您的代码示例不...
<?php
echo '<img src="https://photos-1.dropbox.com/i/l/EyvpAUN99vGCmWKqw-ywSYXY1L8dPhkloKA5i9I--NM">';
echo '<img src="http://www.google.co.uk/intl/en_uk/images/logo.gif">';
exit;
?>
编辑:将以上内容保存为html文件,我只在Chrome中看到一个图片...另外 - 您是否安装了PHP模块/与您的网络服务器相关联?
答案 4 :(得分:0)
在两者中尝试'查看来源'并比较结果。