Vatrush
@Vatrush

Как в подготовленный MySQL запрос вставить данные из массива?

Имеется вот такой метод записи в бд:
public function insert($table,$data)
    {
        $pdo = $this->db;
        $query = $pdo -> prepare("INSERT INTO $table VALUES(:login,:password,:name)");
        $query -> execute($data);

    }

В него приходят данные отсюда:

public function createUser()
    {
        $db = new DB();
        $data = [
            'login' => "login",
            'password' => "password",
            'name' => "name"
        ];
        $db -> insert('users',$values);
    }

Каким образом в запросе можно подставить данные в VALUES(:login,:password,:name) из $data?
т.е грубо говоря привести запрос в VALUES($data)
  • Вопрос задан
  • 355 просмотров
Пригласить эксперта
Ответы на вопрос 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Имена полей и названия плейсхолдеров ни в коем случае нельзя брать из $data
Есть класс юзеров,

Имена полей должны быть прописаны в этом классе и использоваться для построения запросов. В общем случае это просто имена свойств класса.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы