PHP - MySQL 语句在 UPDATE SET 时始终将值设置为 1

标签 php mysql sql-update wamp lamp

foreach ($_POST as $nazwa_checkboxa=>$id) {
    $s = "SELECT uprawnienie FROM user WHERE Id_user=".$id;
    $helpdesk = 0;

    if ($s == 0) {
        $helpdesk = 1;
    }

    $z = "UPDATE user SET uprawnienie = ".$helpdesk." WHERE Id_user=".$id;
    $wynik = $polaczenie->query($z);
    $zmienione++;
}

uprawnienie 返回0 = 普通 用户和1 = 管理员 更新总是将值设置为 1,我可以将用户更改为管理员(0 到 1),但它不起作用 1 到 0

最佳答案

实际上,您可以使用一个查询来完成,例如:

update user
set uprawnienie = (SELECT if(uprawnienie=1,0,1) FROM user WHERE Id_user = '<id>')
where Id_user = '<id>'

关于PHP - MySQL 语句在 UPDATE SET 时始终将值设置为 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35900063/

相关文章:

php - curl :(35)OpenSSL SSL_connect:SSL_ERROR_SYSCALL 连接到 domain.com:443

php - Symfony2 - 检测用户是否在安全防火墙内

php - 获取纬度和经度数据时出现问题

mysql - C# mysql 75英里半径 map 覆盖整个美国

mysql - 如何优化UPDATE语句?

php - php 中的堆叠 Highcharts

php - 从模型函数中排序数组列表

python - SQLAlchemy+pymysql错误: sqlalchemy. util.queue.Empty

php - 用于存储具有多个可用选项的项目的 MySQL 数据库结构

mysql - 更新 MySQL 的内连接