【问题标题】:Prevent a line of source code from showing防止显示一行源代码
【发布时间】:2013-07-03 03:25:51
【问题描述】:

如何隐藏这个 html 行,它不会在检查元素或查看源代码中显示给用户。

<input type="hidden" name="kda" value="<?php echo $code;?>">

我该怎么做?

【问题讨论】:

    标签: php html


    【解决方案1】:

    您不能这样做 - 您发送到浏览器的所有内容最终都可以以某种方式读取和存储。

    但是,您可以做的是使用会话来存储此信息。然后,只有一个会话标识符将被发送到浏览器(并返回到服务器),而您的敏感信息可以保留在服务器上。

    【讨论】:

    • 请注意,这需要服务器端解释器!
    • OP 正在使用 php,因为这就是他填充 var 的方式,不是吗?
    • OK 我如何使用 $_SESSION 来存储多个
    • $_SESSION 是一个数组 - 您可以使用不同的键存储多个值,例如$_SESSION['first'] = 'somedata';$_SESSION['second'] = 'otherdata';。更多详情请见w3schools.com/php/php_sessions.asp
    • @winSharp93 我可以这样用吗$_SESSION['$name'] = '$code';
    【解决方案2】:

    从视图源中隐藏 HTML 是不可能的。任何 HTML 都会发送到客户端,并且可以在查看源代码中查看。尝试将它存储在$_SESSION,一个 PHP 超全局变量中。它为用户提供了一个 cookie,告诉 PHP 在哪里可以找到 $_SESSION 中的用户信息。

    $_SESSION 是一个数组。这意味着您可以存储$_SESSION['pies_bought'] = 7$_SESSION['cakes_bought'] = 3

    http://www.php.net/manual/en/session.examples.basic.php

    【讨论】:

      【解决方案3】:

      如果你“隐藏”它,它就不会起作用。 您可以在 PHP 注释中包围,以便在服务器呈现页面时将其剥离,但我认为您要求隐藏此隐藏表单字段的值,并且您不能按照您的建议进行操作。 您可以将“可查看”表单字段发布到另一个 php 脚本,然后添加此“机密”密钥,然后将表单提交到任何地方。 您可以在提交表单后调用 ajax 请求来获取值并一次性提交。

      给猫剥皮的多种方法。

      【讨论】:

        【解决方案4】:

        将此标志设置为 PHP 变量,而不是在表单中实际包含 hidden 输入字段。

        【讨论】:

        • 按照@travis-gd 的建议设置$_SESSION['kda']=(result of code())?我认为这应该可行。
        【解决方案5】:

        如果您仍想在表单中将其用作查询参数,则可以使用加密,否则会话是您的最佳选择。

        <input type="hidden" name="kda" value="<?php echo some_php_crypt_function($code);?>">
        

        当你在服务器上收到kda时,只需将其解密并获取值。

        此链接http://www.php.net/manual/en/mcrypt.examples.php 有如何在 php 中使用加密/解密的示例。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-05-20
          • 2016-11-16
          • 2020-06-21
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多