insert DBAPI
- Разработчикам
- DBAPI
- insert
insert DBAPI
mixed insert($fields, $intotable [, $fromfields [, $fromtable [, $where [, $limit ]]]])
$fields - ассоциативный массив добавляемых значений, с названием поля в виде ключа
$intotable- таблица для добавления
$fromfields - список полей используемых для импорта из другой таблицы
$fromtable - таблица используемая для импорта
$where - условие для запроса данных из таблицы для импорта
$limit - ограничение количества записей для импорт
Метод INSERT позволяет добавлять новые записи в базу данных. Значения передаются в виде ассоциативного массива $fields, формат которого field => value. Ключ "field" указывает на название колонки, а "value" - добавляемое значение.
Параметры $fromfields, $fromtable, $where и $limit используются для копирования данных из одной таблицы в другую.
Этот метод возвращает AUTO_INCREMENT-идентификатор для добавленной записи.
Пример
function insert_my_rows($data = array()) { global $modx; $table_name = $modx->getFullTableName('cars'); $fields = array( 'name' => $data['name'], 'color' => $data['color'], 'make' => $data['make'], 'model' => $data['model'], ); $modx->db->insert($fields, $table_name); }
Источник Функции
Файл: manager/includes/extenders/dbapi.mysql.class.inc.php
Строка: 209
function insert($fields, $intotable, $fromfields = "*", $fromtable = "", $where = "", $limit = "") { if (!$intotable) return false; else { if (!is_array($fields)) $flds = $fields; else { $keys = array_keys($fields); $values = array_values($fields); $flds = "(" . implode(",", $keys) . ") " . (!$fromtable && $values ? "VALUES('" . implode("','", $values) . "')" : ""); if ($fromtable) { $where = ($where != "") ? "WHERE $where" : ""; $limit = ($limit != "") ? "LIMIT $limit" : ""; $sql = "SELECT $fromfields FROM $fromtable $where $limit"; } } $rt = $this->query("INSERT INTO $intotable $flds $sql"); $lid = $this->getInsertId(); return $lid ? $lid : $rt; } }