【问题标题】:HTML generated from valid PHP produces iframe validation errors从有效 PHP 生成的 HTML 会产生 iframe 验证错误
【发布时间】:2015-07-02 20:01:23
【问题描述】:

我有在大多数 PHP 验证器中完美验证的 PHP 代码。 但是,当我访问该站点并检查元素以将 HTML 复制到 HTML 验证器中时,我得到了一大堆错误 - 主要与 iframe 有关。我在我的 php 代码中与 iframe 无关,这就是我对此感到困惑的原因。任何人都可以帮助阐明这一点吗?我的所有页面都发生了这种情况,这项作业将于明天到期,因此非常感谢任何帮助。 PHP的一个例子:

<?php
    //addSuccess
    include("include/header.php");

    //Makes sure user is logged in. If not, ends the script
    if ($logged_in == false) {
        print("Access denied!");
        die();
    } else {
        header("Refresh:3;url=add.php");
    }
    ?>

    <div id="success" class="mid">
        Successfully added/linked entry. Redirecting to add page...
        <p>
        (Click <a href="add.php">Here</a> if your browser does not automatically redirect you.)
    </div>

    <?php include("include/footer.php"); ?>

未登录时生成的 HTML:

<html lang="en"><head>
    <meta charset="utf-8">    
    <title>G.S.DB</title>
    <meta name="author" content="Author name">
    <link href="http://fonts.googleapis.com/css?family=Open+Sans:300" rel="stylesheet" type="text/css">
    <link rel="stylesheet" href="css/styles.css">
</head>


<body data-feedly-mini="yes"><header>
    <img src="images/logo.png" alt="Good Show Database">
</header>


<div id="nav" class="centre" ;="">
<nav>
    <ul>
        <li><a href="index.php">Home</a></li>
        <li><a href="login.php">Login</a></li>          <li><a href="search.php">Search</a></li>
        <li><a href="shows.php">Show list</a></li>
        <li><a href="cast.php">Actor list</a></li>
                </ul>
</nav>
</div>




    <div id="main">Access denied!</div><iframe frameborder="0" scrolling="no" style="border: 0px; display: none; background-color: transparent;"></iframe><div id="GOOGLE_INPUT_CHEXT_FLAG" input="" input_stat="{&quot;tlang&quot;:true,&quot;tsbc&quot;:true,&quot;pun&quot;:true,&quot;mk&quot;:false,&quot;ss&quot;:true}" style="display: none;"></div><div id="feedly-mini" title="feedly Mini tookit"></div></body></html>

【问题讨论】:

  • 那么,究竟是什么问题?您希望我们修复您从 html 验证中得到的错误吗?
  • 我正在尝试找出 iframe 来自何处的原因,因为我没有输入任何与它有关的内容。如果我能找到原因,我应该能够自己解决它

标签: php html validation iframe


【解决方案1】:

如果您只是想验证您的 HTML,则无需检查您网站的元素并将其复制到 HTML 验证器中。

由于 PHP 是一种服务器端语言,它会在客户端代码(CSS、HTML)发送到浏览器之前执行。因此,只需通过https://validator.w3.org/nu/ 验证您的 HTML(只需将您的链接放在输入中,它就会检查您的 HTML),它将无法看到任何 PHP 代码。

【讨论】:

  • 好主意 - 我会试一试。但是该链接受用户名和密码保护,我无法更改。看来我现在要在公共场所重新上传我的网站...
  • 如果您尝试验证的站点受密码或会话保护,它将无法验证其 HTML。解决这个问题的方法可能是将受保护的代码复制到一个新文件中,验证然后删除它。
  • 通过文件上传进行验证怎么样 - 会产生同样的效果吗?我会在一分钟内试一试
  • 是的,那么验证器将可以访问所有代码,因此这可能是最简单和最好的方法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-08-15
  • 1970-01-01
  • 2011-03-25
  • 1970-01-01
  • 1970-01-01
  • 2018-07-23
  • 1970-01-01
相关资源
最近更新 更多