从电子邮件链接启动PHP会话
我有一封电子邮件,其中包含我发送给潜在客户的各种产品的链接。单击链接时,我希望将用户带到带有表单的页面。根据他们单击的产品链接,我希望隐藏输入字段的值等于产品名称 我还希望该页面只能通过电子邮件中的链接访问从电子邮件链接启动PHP会话,php,session,post,cookies,get,Php,Session,Post,Cookies,Get,我有一封电子邮件,其中包含我发送给潜在客户的各种产品的链接。单击链接时,我希望将用户带到带有表单的页面。根据他们单击的产品链接,我希望隐藏输入字段的值等于产品名称 我还希望该页面只能通过电子邮件中的链接访问 我该怎么做呢?电子邮件中的链接可以是 http://example.com/my-script.php?email=<email_address>&token=<token> http://example.com/my-script.php?email=&t
我该怎么做呢?电子邮件中的链接可以是
http://example.com/my-script.php?email=<email_address>&token=<token>
http://example.com/my-script.php?email=&token=
其中,
值由脚本根据电子邮件地址(以秘密方式)计算;然后在my-script.php上检查接收到的令牌值是否有效(通过从电子邮件地址再次计算令牌并比较两者)
当然,任何拥有此链接的人都可以直接进入该页面,但他们无法更改电子邮件地址的值。为了防止这种情况,您必须拥有用户帐户,用户需要登录电子邮件中的链接可以是
http://example.com/my-script.php?email=<email_address>&token=<token>
http://example.com/my-script.php?email=&token=
其中,
值由脚本根据电子邮件地址(以秘密方式)计算;然后在my-script.php上检查接收到的令牌值是否有效(通过从电子邮件地址再次计算令牌并比较两者)
当然,任何拥有此链接的人都可以直接进入该页面,但他们无法更改电子邮件地址的值。要防止这种情况发生,您必须拥有用户帐户,并且用户需要登录您的第一个问题非常简单。您只需使用URL($\u GET['pruduct\u name'])中的参数,并将其放入隐藏输入的值字段中,如:
<input type="hidden" value="<?php echo $_GET['product_name']; ?>" />
您的第一个问题很简单。您只需使用URL($\u GET['pruduct\u name'])中的参数,并将其放入隐藏输入的值字段中,如:
<input type="hidden" value="<?php echo $_GET['product_name']; ?>" />
当您发送电子邮件时,您可以生成一个随机字母数字序列,添加到URLyourdomain.com/page.php?id=sdlasjh234897dhaksjhda
的查询字符串中,并将其与所连接的产品一起保存到您的数据库中
当用户到达页面时,检查数据库中的id。如果该id不在数据库中,则显示链接无效的消息。否则,显示表单并使用您在数据库中保存的产品名称和id填充隐藏的输入。发送电子邮件时,您可以生成一个随机字母数字序列,添加到URLyourdomain.com/page.php?id=sdlasjh234897dhakshhda
的查询字符串中,并保存到数据库中,它与哪个产品连接在一起
当用户到达页面时,检查数据库中的id。如果该id不在数据库中,则显示链接无效的消息。否则,显示表单并使用您保存的产品名称以及数据库中的id填充隐藏的输入。您的服务器无法确定是否确实从电子邮件中单击了链接。任何人都可以键入链接并访问同一页面。您的服务器无法确定是否从电子邮件中实际单击了该链接。任何人都可以键入链接并访问同一页面。电子邮件可以是电子邮件哈希,使其更安全。电子邮件可以是电子邮件哈希,使其更安全。