php - 如何获取登录用户的当前user_id
问题描述
我刚刚创建了一个 php 文件来更新 mysql db 中的一个字段,我的更新查询是我遇到问题的地方,我想将 'user_id' 设置为当前登录用户的 user_id,以便更新将转到合适的用户。我无法让它工作。我觉得是因为我没有在代码的前面声明当前用户,我该怎么做?
这是行:
$sql = "UPDATE wp85_usermeta SET `meta_value` = `meta_value`+65000 WHERE `user_id` = user_id AND `meta_key` = 'mycred_default'"
这是完整的代码:
<?php
$servername = "localhost";
$username = "sparyqmr_wp324";
$password = "(S8p3uV-2t";
$dbname = "sparyqmr_wp324";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$sql = "UPDATE wp85_usermeta SET `meta_value` = `meta_value`+65000 WHERE `user_id` = user_id AND `meta_key` = 'mycred_default'";
if ($conn->query($sql) === TRUE) {
echo "Record updated successfully";
} else {
echo "Error updating record: " . $conn->error;
}
$conn->close();
?>
解决方案
尝试使用会话变量。会话变量是为每个用户存储在服务器上的全局变量。
如果用户登录,您可以将他的用户 ID 存储在会话变量中。如果会话已启动,您可以在所有文档中访问此变量。
您可以通过以下方式开始会话:
session_start();
您可以使用以下代码设置会话变量:
$_SESSION['userid'] = 'your_user';
推荐阅读
- python - AttributeError:“str”对象没有属性“map”
- javascript - 如何在多个子组件Angular 6中使用反应形式?
- django - 如何更改自动影响Django中其他记录的字段
- powershell - 使用任务计划程序执行 PowerShell 脚本时修复 (0x1) 错误
- sql - 根据性别和得分百分比从多个表格中获取计数
- java - 使用 @ContextConfiguration 在 JUnit 上测试具有不同构造函数参数的 Spring bean
- android - IsSelectable 从 TextView 上的 onClickListener 窃取事件
- android - 删除不同版本 APK 中的重复资源
- json - 使用 Codable swift 解析时忽略数组中的空对象
- python - xcode 构建阶段的 Python 脚本