php - 如何在php中的每个href点击上设置新 session

标签 php mysql session

我想设置点击 session 。

我有一个页面 mylinks.php 并从 mysql 获取数据

while($r=mysqli_fetch_array($results))
{
 echo "<a href='get.php?id=".$row[0]."'>".$row[1]."</a>";
}

我只想在单击链接时创建一个新 session 。并在另一个页面上使用它们。我想在源页面而不是下一页上创建 session 。

并且在 mylinks.php 上创建的 session 在 get.php 上未设置 因此,每次新点击时,都会在源页面(即 mylinks.php 页面)上创建一个新 session 。

请帮我解决这个问题。

编辑:-我希望仅当用户来自 mylinks.php 页面时才显示 get.php 的内容。

最佳答案

如果您想使用 php session 来完成您想要完成的任务,您可以用更简单的方法来实现。

您应该创建一个唯一的 token 值并将其存储在$_SESSION['token']上在 mylinks.php 页面的开头。此外,您还应该将该值设置为链接上的查询字符串,例如 echo"<a href='get.php?id=".$row[0]."&token=".$_SESSION['token']."'>$row[1]</a>";

现在在get.php页面上,您可以使用以下条件来查看它是否确实被mylinks.php页面引用

if(isset($_GET['token']) && $_GET['token'] == $_SESSION['token']) {
     //Token matche, so a valid request
     $_SESSION['token'] = "";
}
else {
    //Invalid request
}

关于php - 如何在php中的每个href点击上设置新 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28713794/

相关文章:

php - 在没有数据库访问权限的主机上创建基于 php 的博客

http - Dart session

node.js - MEAN js 如何处理身份验证?

php - 如何使用 php 的 password_hash() 方法..?

php - 获取具有特定值的字段数? :mysql-php

session - Tomcat 7 在浏览器重启时写入相同的 JSessionid cookie

项目子文件夹中的 PHP 命名空间

php - 如何通过同一个帖子检查电子邮件地址或用户名是否有效或是否存在?

javascript - axios中POST请求中发送参数

mysql - 在 ireport 中使用 SQL 查询来报告用户反馈