【问题标题】:In PHP, how to replace GET method by using Sessions or POST method?在 PHP 中,如何使用 Sessions 或 POST 方法替换 GET 方法?
【发布时间】:2018-12-06 02:44:48
【问题描述】:

下表是“查看详细信息”链接在 url 中包含“客户主管”、“财务年度”和“预算”值的表格:

第 1 页

点击“查看详情”链接后,新页面会显示为:

第 2 页

我已经使用GET方法实现了它(数据库保存“查看详细信息”的值),因此每次单击“查看详细信息”按钮后都会显示相应的页面。

我想知道是否可以使用 POST 方法或 SESSIONS 来实现。如果是,那么如何?

【问题讨论】:

  • 问题:为什么?你想解决什么问题?无论如何,是的,它可以做到。您可以简单地创建一个带有信息的表单,而不是普通的链接。然后,您应该在用户单击“查看”时每行创建一个表单,或者您可以拥有一个表单,您可以通过 JS 设置正确的记录并在用户单击“查看”时提交。
  • 您要发布代码吗?

标签: php session post get


【解决方案1】:

是的,您可以使用 POST,但我认为您不能将 SESSIONS 用于这些。为了使用 POST 方法,您必须将每个链接转换为迷你表单并将其发布到操作中。考虑下面的代码:

<form id="postlink" method="post" action="view.php">
    <input name="postId" type="hidden" />
    <button type="submit" style="display:none;">Submit</button>
</form>

然后你必须在链接和一些 jQuery 代码中包含一个公共类。

// $i refers to the primary key of the entry that is got while looping the data.
<a href="javascript:void(0)" class="post_link" data-id="<?php echo $i; ?>">View</a>
jQuery(".post_link").click(function () {
    jQuery("form#postlink input[name='postId']").val(jQuery(this).attr('data-id'));
    jQuery("form#postlink").submit();
});

但这是很长的路,没有人喜欢这种方法,因为涉及的代码太多。最好的方法是使用 GET 方法,因为它用于选择数据。如果您担心安全问题,则可以加密链接中传递的主密钥,并在相应文件中解密该主密钥。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2016-02-25
    • 1970-01-01
    • 1970-01-01
    • 2020-07-19
    • 1970-01-01
    • 1970-01-01
    • 2013-01-12
    • 2011-10-07
    • 2015-06-07
    相关资源
    最近更新 更多