PHP MySQL更新语句不起作用

I have searched online for possible reasons of why a MYSQL update statement won't work but none of the solutions work on my case. What could be wrong in these lines of code?

     public function forgotPassword($email, $newpassword, $salt){
     $result = mysqli_query($this->db->con,"UPDATE users SET user_password = '$newpassword',salt = '$salt'
                      WHERE email = '$email'");

I have tried,

"UPDATE 'users' SET 'user_password' = '$newpassword','salt' = '$salt'
                      WHERE 'email' = '$email'"

I have also tried,

"UPDATE 'DBNAME'.'users' SET 'user_password' = '$newpassword','salt' = '$salt'
                      WHERE 'users'.'email' = '$email'"

The forgotPassword function works properly, only the UPDATE statement is not executed.

Here is the complete function

    public function forgotPassword($email, $newpassword, $salt){
$result = mysqli_query($this->db->con,"UPDATE `melobook_customers`.`users` SET `user_password` ='$newpassword',`salt` ='$salt'
                      WHERE `users`.`email` ='$email'");

     if ($result) {
      return true;
      }
   else
     {
     return false;
     }

     }

I think the problem is within your query, you used table name within single quotes which should not be used, here you can see: 'users'. Instead of the single quotes you've to use `users` or you can leave that like this users. So your query will look something like this,

"UPDATE `users` SET `user_password` = '$newpassword',`salt` = '$salt' WHERE `email` = '$email'"

//I have also tried, Your second query will look something like this

"UPDATE `DBNAME`.`users` SET `users`.`user_password` = '$newpassword',`users`.`salt` = '$salt' WHERE `users`.`email` = '$email'"

Updated Code Based on your requirement

<?php
        class check_update{

            private $con;

            public function __construct(){
                $this->con = mysqli_connect("db_host", "db_user", "db_password", "db_name");
            }

            public function forgotPassword($email, $newpassword, $salt){
                $sql = "UPDATE `db_name`.`table_name` SET `table_name`.`password` ='$newpassword',`table_name`.`salt` = '$salt' WHERE `table_name`.`email` ='$email'";
                $result = mysqli_query($this->con, $sql);
                if ($result) {
                    return true;
                }else{
                    return false;
                }
            }
        }
        $check_update = new check_update();
        $check_update->forgotPassword("your_email", "new_password", "salt");
?>

Hope this will fix your problem.