PHP MySQLi UPDATE dynamicali SET语句bind_param无法正常工作

时间:2017-05-07 17:44:36

标签: php mysqli set

我有一个简单的问题,我无法解决,因为我开始使用OOP,同时使用MySQLi。

我需要这些功能通用,我需要更改SET语句动态。

这是我的更新功能,这些功能不起作用

public function updateUser($user, $pass, $dbSet) {   
  if($this->getUser($user, $pass) != NULL) {      
    $sql = $this->connection->prepare("UPDATE users SET ? WHERE user = ?");

    $sql->bind_param('ss', $dbSet, $user);
    $sql->execute();   
    $sql->close(); 

    return true;
  } else {
    return false;
  }   
}

变量$ dbSet包含不同的值。例如:

  

$ dbSet =“last_activity =”。$ last_activity;

或复杂

  

$ dbSet =“name =”。$ newName。“,surname =”。$ newSurname。“,email =”。$ newEmail;

但是当我为一个SET语句更改它时,它可以工作......

...         
    $sql = $this->connection->prepare("UPDATE users SET last_activity = ? WHERE user = ?");         
...

感谢您的帮助。

0 个答案:

没有答案