Запись данных в базу в базу

Добрый день, вопрос по работе с собственными таблицами в БД.
Как извлекать данные я разобрался,(использую конструкцию такого вида
$results = $modx->query("SELECT * FROM table_name ");
$data = $results->fetchAll(PDO::FETCH_ASSOC);

а вот как вносить данные никак не могу разобраться. пробовал разные конструкции, но все равно получаю ошибки.
Можете подсказать?
Дмитрий
10 ноября 2021, 11:24
modx.pro
1 058
0

Комментарии: 5

    Роман
    10 ноября 2021, 16:42
    0
    =) Точно так же и вносите:
    $stmt = $modx->prepare("UPDATE table_name SET `status`='1' WHERE id=:id");
    $stmt->execute(["id" => $id]);
      Дмитрий
      11 ноября 2021, 10:10
      0
      Да, спасибо, разобрался в итоге.
      Обновление таблицы проходить вообще в одну строку
      $results = $modx->query("UPDATE table_name WHERE id=1 ");
      Однако парни правы. Прочитав официальную документацию, узнал, что хотя так и можно делать, но не желательно. Нужно использовать xPDO. Придется разбираться). Тем более, что беглом просмотре конструкций сделал вывод, что инструмент крайне удобный и функциональный. Спасибо всем.
      Александр Мельник
      10 ноября 2021, 18:16
      0
      Дмитрий, дело в том, что modx использует для работы с базой данных так называемую ORM (object relational mapper) которая называется xPDO.
      В таком случае все таблицы в базе представлены как некие сущности-объекты, работать с которыми нужно не прямыми SQL запросами, а методами xPDO.
      Почитайте информацию, ссылки на которую дал Александр.
        Андрей
        09 апреля 2024, 23:09
        0
        может вы подскажете как добавить свое поле для объекта msProduct, если добавляю напрямую через БД, то оно недоступно, никак не получается найти нужную информацию, плохо ищу видимо: с
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        5