使用php进行mysql查询更新

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用php进行mysql查询更新相关的知识,希望对你有一定的参考价值。

请帮我理解为什么这个更新查询不会更新我的数据库记录?我知道有很多类似的问题,我也读过它们,但我仍然不知道什么是错的......

这是我输入的方式:

<form class="mx-3 my-3" role="form" method="post" action="buka_akun.php">
        <div class="form-group">
            <label for="InputUserName" class="font-weight-bold">Username</label>
            <input type="text" class="form-control" name="inputUserName" id="inputUserName" aria-describedby="InputUserNameHelp" placeholder="Masukkan username Anda...">
        </div>          
        <button type="submit" class="btn btn-primary border-0 mr-2" name="buttonBukaAkun" style="background-color: rgba(18, 137, 167,1.0);">Buka Absen</button>
        <button type="submit" class="btn btn-primary border-0 mr-2" name="buttonTutupAkun" style="background-color: rgba(18, 137, 167,1.0);">Tutup Absen</button>
</form>

我的PHP:

<?php
    include("header.php");
    include("db_connect.php");

    $flag = 0;

    if(isset($_POST['buttonBukaAkun'])){
        $username = $_POST['inputUserName'];

        $query_buka_akun = "UPDATE 'user_login' SET 'activate' = '1' WHERE 'username' = '$username'";

        $result_buka_akun = mysqli_query($connection, $query_buka_akun);

        if($result_buka_akun){
            $flag = 1;
        }
    }

    if(isset($_POST['buttonTutupAkun'])){
        $username = $_POST['inputUserName'];

        $query_tutup_akun = "UPDATE 'user_login' SET 'activate' = '0' WHERE 'username' = '$username'";

        $result_tutup_akun = mysqli_query($connection, $query_tutup_akun);

        if($result_tutup_akun){
            $flag = 1;
        }
    }
?>

数据库表:

CREATE TABLE user_login(
id_login int(255) PRIMARY KEY AUTO_INCREMENT,
username varchar(255),
password varchar(255),
level varchar(255),
activate int(2));
答案

表格提交,用qazxsw poi替换qazxsw poi标签。

<button>

并且,不要将表列名称放在引号之间。

<input type='submit'>
另一答案

您应首先转义POST数据。

为什么在声明中使用'?

<input type="submit" class="btn btn-primary border-0 mr-2" name="buttonBukaAkun" style="background-color: rgba(18, 137, 167,1.0);" value="Buka Absen" />

应该是这样的

$query_buka_akun = "UPDATE user_login SET activate = '1' WHERE username = '$username'";

以上是关于使用php进行mysql查询更新的主要内容,如果未能解决你的问题,请参考以下文章

更新查询更新不起作用

Mysql PHP 查询更新

使用 json rereiver php mysql 在片段中填充列表视图

使用复选框和 PHP 更新 MySQL 数据库

更新 WordPress 以使用 mysqli 而不是 mysql

更新查询 PHP MySQL