0

在此页面http://www.effectivewebsolutions.biz/video-spokesmodel.html如果您输入您的 URL,它会通过 fopen 函数打开它并在网站上放置一个视频辐条模型用于演示目的,这里是脚本。

<?php
$handle = fopen($_POST["url"], "r");

while($data = fread($handle, 1000000)){
    $contents .= $data;
}

fclose($handle);

echo "<base href=\"{$_POST['url']}\">";
echo "\n\n";
echo "<!-- Begin inserted page -->";
echo "\n";
echo $contents;
echo "\n";
echo "<!-- End inserted page -->";
echo "\n\n";
echo '<script type="text/javascript" src="http://www.internet-spokesmodels.com/scripts/swfobject.js"></script>';
echo '<style type="text/css" media="screen">object { outline:none; } </style>';
echo "\n";
echo '<script type="text/javascript" src="http://www.internet-spokesmodels.com/actors/script/SabrinaEXAMPLESredshirt_350x500.js"></script>';
?> 

但是在 Safari 中,它只打开网站的文本版本(没有 css 或图像)。在这种情况下,为什么浏览器会有所作为是没有意义的。

有任何想法吗?

4

2 回答 2

0

可能是因为页面没有呈现有效的 HTML。当我尝试使用 时http://www.google.ca,我得到了:

<base href="http://google.ca">

<!-- Begin inserted page -->
<!doctype html><html><head><meta http-equiv="content-type" ...

DOCTYPE 应该是页面中的第一件事,然后是<html>带有 HTML 内容的标签。<base>标签应该在标签内<head>

你不能责怪 Safari 错误地显示无效的 HTML。

于 2011-02-11T16:32:34.353 回答
0

返回的 HTML 代码在浏览器之间应该是相同的,因为浏览器与服务器端代码无关。检查 HTML 的有效性。此外,按照建议的 meagar 清理您的输入。

于 2011-02-11T16:37:05.467 回答