我们可以在mail函数中使用post方法重定向到另一个页面吗


can we use post method in mail function to redirect to another page

编写php邮件函数时。。我需要在那封邮件里加个链接。我还需要将两个值转移到目标页面。现在我正在使用。

<a href='http://www.example.com/allow.php?id=$url&cat=$cat'>Click here to accept his request</a> 

当用户单击此链接时,该页面将获得这些值。但是我不得不使用post方法而不是get方法。以防止知道ID和CAT。

有机会在邮件中使用邮寄方式吗。或者如何在加载后从url中删除此链接。或者如何加密此链接。。

您无法在电子邮件中POST,唯一的方法是使用唯一的令牌。如果需要,它可以在单击后过期,用于验证您的电子邮件地址等。唯一的令牌可以通过数据库链接,将令牌链接到您不希望用户看到的url和id。

您不能将POST方法与链接一起使用,但发送的电子邮件可能包含一个完整的HTML表单,因此您可以使用POST方法
缺点是不是每个邮件客户端都能正确显示这样的电子邮件。

否,您不能通过电子邮件中的链接发送帖子请求。但是,您可以通过多种方式实现不向客户披露变量的目标。

一种方法是使用数据库表,例如:

request_id | user_id | category
1            73        books

通过在用户生成请求时添加一条记录,并将电子邮件中的request_id发送给接收用户。然后查找request_id并获取user_id和类别。

正如另一位用户所提到的,您还可以记录请求何时被接受/拒绝,设置到期等。

另一种更简单的方法是对值使用某种双向加密,因此电子邮件包含加密版本。也许不那么安全,也不那么可扩展,但可能设置得更快。