Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 获取了成功的更新消息,但数据库表中没有任何更改_Php_Mysql - Fatal编程技术网

Php 获取了成功的更新消息,但数据库表中没有任何更改

Php 获取了成功的更新消息,但数据库表中没有任何更改,php,mysql,Php,Mysql,[已编辑解决] 我有一个update.php文件来更改某个用户角色。我收到消息更新记录成功,但数据库表中没有更改。你能告诉我哪里错了吗。不过我对Php还是新手 更新特定用户的用户名和用户角色 update.php <?php require 'dbconnect.php'; if($_SERVER["REQUEST_METHOD"] == "POST") { $newUsername = mysqli_real_escape_string($conn, $_POST['usern

[已编辑解决]

我有一个update.php文件来更改某个用户角色。我收到消息更新记录成功,但数据库表中没有更改。你能告诉我哪里错了吗。不过我对Php还是新手

更新特定用户的用户名和用户角色

update.php

<?php
require 'dbconnect.php';

if($_SERVER["REQUEST_METHOD"] == "POST")
{
    $newUsername = mysqli_real_escape_string($conn, $_POST['username']);
    $newRole = mysqli_real_escape_string($conn, $_POST['role-dropdown']);
    $id = $_POST['id'];

    $sql = "UPDATE users SET username = '$newUsername', user_role = '$newRole' WHERE userID = '$id';"; 

if($conn->query($sql) === TRUE)
{
    echo("Record updates successfully");
}
else
{
    echo("Error updating record: ");
    die(mysqli_error($conn));
}
}

$conn->close();
<main> 
    <div id="gt-menu">
    </div>

    <form id="user-form" class="form" method="POST" action="includes/update.php">
        <h3>Edit User Role</h3>
        <label for="username">Username:</label>
        <input id="username" type="text" name="username" value="<?php echo $row['username']; ?>">
        <input type="hidden" name="id" value="<?php echo $row['userID']; ?>">

        <select class="select" id="role-dropdown" name="role-dropdown">
            <option value="_Any" selected="selected">Please Choose</option>
            <option value="1">Admin</option>
            <option value="2">Manager</option>
            <option value="3">General User</option>
            <option value="4">External Company</option>
        </select>

        <button type="submit" name="update-btn" id="update-btn">Update</button>

    </form>
</main>

您的ID没有值

<input type="hidden" name="id">

应该是这样的:

<input type="hidden" name="id" value="ID_YOU_WANT_TO_UPDATE">

您的ID没有值

<input type="hidden" name="id">

应该是这样的:

<input type="hidden" name="id" value="ID_YOU_WANT_TO_UPDATE">


使用
mysqli受影响的行(连接)
而不是使用
$conn->query($sql)==TRUE
使用
mysqli受影响的行(连接)
而不是使用
$conn->query($sql)==TRUE
我同意,这很可能是正确的。因此,查询正在成功运行,它只是,没有ID,因此没有要更新的内容。Mark Daxter应该使用
mysqli\u受影响的行
查看是否有任何内容真正更新。感谢Sauav和Jonathan的帮助。我同意,这很可能是正确的。因此,查询正在成功运行,它只是,没有ID,因此没有要更新的内容。Mark Daxter应该使用
mysqli\u受影响的行
来查看是否有任何内容真正更新。感谢Sauav和Jonathan的帮助。