php - 如何将 php session 值获取到 mysql 触发器中

标签 php mysql session triggers

如何从 php session (userid)获取字段值以在 mysql 触发器中使用它

我的触发器:

 BEGIN
 IF NEW.nombre <> OLD.nombre THEN
        INSERT INTO socios_history (socio_id,tabla,campo, old_value, new_value,lstuser,updated) VALUES (old.socio_id,'usuarios','nombre',old.nombre,new.nombre,XXXXX,now());
    END IF;
 IF NEW.email <> OLD.email THEN
        INSERT INTO socios_history (socio_id,tabla,campo, old_value, new_value,lstuser,updated) VALUES (old.socio_id,'usuarios','email',old.email,new.email,XXXXX,now());
    END IF;
END

XXXXXX 将是来自 $_SESSION["userid"];

的用户 ID

最佳答案

我不太清楚你的意思。如果您能稍微澄清一下您的问题,那就太好了。到目前为止,我得到的是您想要从 session 中检索存储的值。

在登录期间,您应该基本上将用户用户名存储到 session 变量中:

....mysql query checking for login
if login success
$_SESSION['userid'] = $username;

然后在触发器期间检索它,为其创建一个变量

$userid = $_SESSION['userid'];

IF NEW.nombre <> OLD.nombre THEN INSERT INTO socios_history (socio_id,tabla,campo, old_value, new_value,lstuser,updated) VALUES (old.socio_id,'usuarios','nombre','old.nombre','new.nombre','$userid',now());

关于php - 如何将 php session 值获取到 mysql 触发器中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20779182/

相关文章:

SELECT 子句中的 MySQL 相关子查询

php - 从数据库获取数字,然后减去它不起作用

nhibernate - 在事务中运行多个 nhibernate session

javascript - 是否可以检测颜色是浅色还是深色?

php - Doctrine2 静静地无法插入数据

php - 我想保存我选择的所有复选框值

java - Tomcat 能否为 HTTPS 请求提供单独的(或仅 HTTPS) session ?

php - getimagesize() vs finfo_file() 用于检测图像类型?

MySQL GROUP_CONCAT

Java - 如何在两个或多个 Web 应用程序之间共享 session ?