【问题标题】:HTML code is showing in .PHP pageHTML 代码显示在 .PHP 页面中
【发布时间】:2025-12-16 12:40:01
【问题描述】:

我正在用 PHP 和 HTML 混合编写我的第一页。 此页面显示访问者的 IP 地址(ipv4 或 ipv6)。 PHP 脚本运行良好,但 HTML 代码显示为文本而不是渲染。

<!doctype html>
<html>
<title>mioipv6.it</title>
<body>
<?php
header('Content-type: application/json');
if ( array_key_exists('addr', $_GET) )
$ip = $_GET['addr'];
else
$ip = $_SERVER['REMOTE_ADDR'];
$v6 = preg_match("/^[0-9a-f]{1,4}:([0-9a-f]{0,4}:){1,6}[0-9a-f]{1,4}$/", $ip);
$v4 = preg_match("/^([0-9]{1,3}\.){3}[0-9]{1,3}$/", $ip);
if ( $v6 != 0 )
$type = "IPv6";
elseif ( $v4 != 0 )
$type = "IPv4";
else
$type = "unknown";
echo json_encode(array("Il tuo indirizzo" => $ip, "Tipo" => $type));
?> 
<a href='http://ipv6-test.com/validate.php?url=referer'><img src='http://ipv6-test.com/button-ipv6-small.png' alt='ipv6 ready' title='ipv6 ready' border='0' /></a>
</body>
</html>

您可以在此处查看页面:www.mioipv6.it

【问题讨论】:

  • 您在运行网络服务器吗?还是直接在浏览器中打开?
  • OVH 上的网络服务器,您可以在此处查看页面:www.mioipv6.it
  • 代码的第 6 行不起作用 - 在将任何输出发送到浏览器后,您无法进行 header() 调用。
  • 我对这里没有缩进感到难过...
  • @scrowler 非常感谢!!!它现在正在工作

标签: php html ipv6


【解决方案1】:

删除

header('Content-type: application/json');

【讨论】:

  • 你应该解释为什么这会有所帮助,而不是仅仅陈述它。这样,发布问题的人(和其他人)可以从您的回答中学习,而不是盲目地听从建议。
  • 感谢您的建议。 @布拉德