как в Mysql через PDO обновить данные если поле json
Всем доброго, что то не могу понять как обновить данные в поле json
есть $this->db = new PDO('mysql:host='.$config['host'].';dbname='.$config['name'].'', $config['user'], $config['password']); public function query ($sql, $params = []){ $stmt = $this->db->prepare($sql); if (!empty($params)){ foreach ($params as $key => $val){ if(is_int($val)){ $type = PDO::PARAM_INT; } else { $type = PDO::PARAM_STR; } // echo '<p>'.$key.' => '.$val.'</p>'; $stmt->bindValue(':'.$key, $val, $type); } } //exit; $stmt->execute(); return $stmt; } а вот само обращение (КАК ПРАВИЛЬНО СДЕЛАТЬ ЗАПРОС!!!!??????) public function settingsUpdate ($post) { $params = [ 'login' => $post['log'], 'pass' => $post['pas'], ]; $this->db->query('UPDATE table SET colomn= REPLACE("login":"123", "pass":"321") WHERE id = 1', $params); } Заранее спасибо! |
А кто вас надоумил такие данные так хранить? И пароли в базе никогда не хранят в открытом виде.
|
это как пример используется)))
|
но забегаю вперед разобрался!
|
Цитата:
|
Дайте совет тогда)!
есть смс провайдеры у каждого есть свой api( у кого то 2 параметра, у кого 3 и т.д. и с разными названиями парметров.) так вот как бы сделать так что бы пользователь мог выбрать себе провайдера (со своим набором настроек (вот они то как раз в json) необходимого и внес свои настоечные данные в систему и все бы заработало! архитектура интересует?) |
как бы вы сделали?
|
В MySql есть тип данных JSON (https://dev.mysql.com/doc/refman/8.0...functions.html) - если хочется прям JSON и чтобы было можно было DML в стиле SQL )
|
Цитата:
|
Часовой пояс GMT +3, время: 06:17. |