这是我的代码,您可以通过以下方式查看它的示例: www.craftquake.com/statusChecker.php?site=MCnet
<?php
$getter = $_GET['site'];
if ($getter == 'ts3')
{ $site = test_port('ts3.craftquake.com',10011,4); }
if ($getter == 'MCquake')
{ $site = test_port('play.craftquake.com',25565,4); }
if ($getter == 'MCnet')
{ $site = test_port('minecraft.net',80,4); }
$teamspeak = test_port('ts3.craftquake.com',10011,4);
$online = '<img src="/online.png">';
$offline = '<img src="/offline.png">';
$unknown = '<span class="status-unknown" id="status-image">Unknown</span>';
function test_port($host,$port=80,$timeout=1)
{
$fsock = fsockopen($host, $port, $errno, $errstr, $timeout);
if ( ! $fsock )
{
return FALSE;
}
else
{
return TRUE;
}
}
?>
##HEADER & CSS, ETC
<?php
if ($site == 1)
{ $status = $online;
} else if ($site == 0) {
$status = $offline;
} else {
$status = $unknown;
}
header('content-type: image/png');
readfile($status);
echo $status;
?>
我想在页面的页脚中链接到此页面以显示状态。我通过链接他们的Minecraft.net服务器的状态来完成另一个站点的脚本,并且它完美地工作,但是我不知道他们是如何做到的。图像是PNG的,但如果只有一种格式可以使用,我可以转换它们。
我已经尝试了标头(blablabla)功能,但它似乎不起作用......
非常感谢!
答案 0 :(得分:1)
您的变量包含HTML而不是图像文件的路径名:
$online = '<img src="/online.png">';
应该是:
$online = 'online.png';
创建一个未知状态图像并将其放入$unknown
。
答案 1 :(得分:0)
图片应该是单独的请求(因此,在您的html页面中添加<img src="/yourimagescript.php">
,并在单独的脚本中仅输出图片,否html。你可以使用data:
协议嵌入(小)图片,但我强烈建议反对它。