代码之家  ›  专栏  ›  技术社区  ›  Devner

php&html:加密表单

  •  2
  • Devner  · 技术社区  · 14 年前

    我的网站上有表格。这些表单中的一些包括Paypal表单(提交给Paypal的信息的表单)。我不希望我的客户查看源代码并查看我使用的字段及其各自的值。因此,我希望加密他们,但是,能够安全地提交给贝宝的价值与用户输入的形式和我自己的隐藏表单值。

    例如,考虑到我的表单中的一个元素是:

    <input name="note" type="text" id="note" value="<?php echo ( isset($_POST['note']) ? $_POST['note'] : '' ); ?>" maxlength="255" />
    

    当我查看源代码时,我看到如下内容:

    <input name="note" type="text" id="note" value="This is my first note" maxlength="255" />
    

    所以很明显我在发什么短信。我不想让任何人看到我发送的内容和发送到哪里。因此,如果可能,我们是否可以加密字段及其值,以便用户在查看源代码时看到以下内容:

    aXKJKJHlnkhGHKJBjKJOIKJKG5dsaGjhvbSDHAHOSDLnNDNOjkjsadndKHKDNSQW
    

    上面将表示字段的加密形式。在不使用JavaScript的情况下是否可以实现这一点?我真的想在没有javascript的情况下这样做,因为表单字段值将是动态的&javascript可以被禁用。

    非常感谢你。

    Eddi1: 我只是想添加这个注释来指定我将同样的加密过程应用到所有其他表单中,并且它们可能或可能不会发布到PayPal。因此,保持这一点,这将有助于知道一般的加密程序,而不仅仅是贝宝。有什么想法吗?

    4 回复  |  直到 14 年前
        1
  •  4
  •   Ryan Kinal    14 年前

    简短的回答是 .

    为了正确呈现页面,浏览器必须能够读取HTML。不幸的是,这通常意味着它也必须是人类可读的(通过视图源或通过使用DOM检查器)。

    能够 通过使用压缩/缩小的javascript构建整个页面来防止查看源代码,但对于可访问性来说这是一个噩梦,如果您的用户禁用了javascript,那么就没有页面可供他们查看。这不是个好主意。

    查看Internet上的任何页面并查看其源代码。您将看到页面上的所有表单字段和元素(除非它们是由JavaScript创建的,在这种情况下,使用DOM检查器将允许您查看它们)。

    如果您担心安全性,那么服务器端输入验证以及HTTP引用检查就是您的最佳选择。

        2
  •  1
  •   Ian    14 年前

    看起来你把浏览器发送到PayPal的网站,这样他们就可以支付给你,为了这个目的,PayPal需要知道你的身份和交易金额。贝宝作为一个API,你可以使用,所以例如,如果你可以得到一个HTTPS证书,你可以做任何事情在服务器端。如果没有,那么看看他们是否没有交易,在那里他们根据一个唯一的事务ID向您的服务器请求事务详细信息,而不是从浏览器获取所有信息。使用其他API,您可能会更高兴。

    祝你好运!

    哦,别忘了,如果有人知道怎么给你钱,那就完全没问题了!

        3
  •  0
  •   fredley    14 年前

    用javascript加密任何东西是个坏主意,人们可以关闭它。你最好的办法是从用户那里获取你想要的信息,把表单张贴到另一个PHP文件中,它收集数据,添加注释并将表单提交给PayPal本身,并提供额外的信息(阅读)。 this )

        4
  •  0
  •   Nick    14 年前

    您可以在发送到PayPal之前对服务器上的数据进行加密,如前所述,这是您最好的选择,因为它不能被任何人从PayPal中解密。

    有一个教程 here 这似乎很有帮助。因为您已经在使用PHP,所以它应该只是一个复制粘贴作业。