繁体   English   中英

PHP MySQL:更新用户配置文件

[英]PHP MySQL: Updating users profile

我的登录系统中的个人资料页面出了问题。 当我想更新用户的用户名和电子邮件时,我只能更新其中一个。 看看我把点数放在哪里。 如果我使用用户名,则只更新用户名,电子邮件也是如此。

这是我的代码:

function updateProfile($db, $errors)
{       
    $id = $_SESSION['user']['id'];
    $username = mysqli_real_escape_string($db, $_POST['username']);
    $email = mysqli_real_escape_string($db, $_POST['email']);   
    $field_check_query = "SELECT * FROM users WHERE username='$username' email='$email'";
    $result = mysqli_query($db, $field_check_query);
    $field = mysqli_fetch_assoc($result);

    // Checks if username is already taken
    if ($field) { 
        if ($field['username'] === $username) {
          array_push($errors, "Gebruikersnaam is al reeds ingenomen");
        }       
        // Checks if email is already taken
        if ($field['email'] === $email) {
            array_push($errors, "E-mailadres is al reeds ingenomen");
        }
    }

    if (count($errors) == 0) {
        if (isset($_POST['.......'])) {
            $query = "UPDATE users SET username='$username' email='$email' WHERE id=$id";
            mysqli_query($db, $query);
            header('location: profile.php?profileeditedsuccesfully');
            die($query);
        }
    }   
}

在选择中将AND添加到WHERE:

$field_check_query = "SELECT * FROM users WHERE username='$username' AND email='$email'";

添加逗号以分隔更新中的对。

=$query = "UPDATE users SET username='$username', email='$email' WHERE id=$id";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM