Работа с БД: различия между версиями
Перейти к навигации
Перейти к поиску
V0yager (обсуждение | вклад) Нет описания правки |
V0yager (обсуждение | вклад) Нет описания правки |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
Работа с БД организована через класс ormModel (/cms/system/ormModel.php), который расширяет /cms/system/dbModel.php | Работа с БД организована через класс ormModel (/cms/system/ormModel.php), который расширяет /cms/system/dbModel.php | ||
Если нам надо осуществить какие-то действия с таблицей users, схемы public - инициируем класс | Если нам надо осуществить какие-то действия с таблицей users, схемы public - инициируем класс | ||
Строка 11: | Строка 10: | ||
'email' => 'valera@yandex.ru' | 'email' => 'valera@yandex.ru' | ||
]); | ]); | ||
`name и email - поля в таблице users` | `name и email - поля в таблице users` | ||
Чтобы обновить запись | Чтобы обновить запись | ||
$model->updateItem($fields, $where); | $model->updateItem($fields, $where); | ||
$model->updateItem([ | $model->updateItem([ | ||
'name'=>'Герман' | 'name'=>'Герман' | ||
Строка 24: | Строка 23: | ||
Чтобы получить ячейку | Чтобы получить ячейку | ||
$model->s_fetchOne("select name from public.users where id=".(int)$this->params['id']) | $model->s_fetchOne("select name from public.users where id=".(int)$this->params['id']) | ||
или | или | ||
$model->get("name","id=".(int)$this->params['id']); | $model->get("name","id=".(int)$this->params['id']); | ||
Строка 33: | Строка 32: | ||
Чтобы получить строку | Чтобы получить строку | ||
$userData = $model->getRow("id=".(int)$this->params['id']); | $userData = $model->getRow("id=".(int)$this->params['id']); | ||
или | или | ||
$userData = $model->s_fetchRow("select * from users where id=".(int)$this->params['id']); | $userData = $model->s_fetchRow("select * from users where id=".(int)$this->params['id']); | ||
Строка 41: | Строка 40: | ||
Чтобы получить набор строк | Чтобы получить набор строк | ||
$users = $model->getAll("name='valera'") | $users = $model->getAll("name='valera'") | ||
или | или | ||
$users = $model->s_fetchAll("select * from users where name='valera'"); | $users = $model->s_fetchAll("select * from users where name='valera'"); | ||
Фильтрация строк против инъекций на совести программиста |
Текущая версия от 12:52, 13 сентября 2022
Работа с БД организована через класс ormModel (/cms/system/ormModel.php), который расширяет /cms/system/dbModel.php
Если нам надо осуществить какие-то действия с таблицей users, схемы public - инициируем класс
$model = ormModel::init('public','users');
Чтобы добавить новую записсь - вызываем
$model->newItem([ 'name' => 'Валера', 'email' => 'valera@yandex.ru' ]); `name и email - поля в таблице users`
Чтобы обновить запись
$model->updateItem($fields, $where); $model->updateItem([ 'name'=>'Герман' ], 'id='.(int)$this->params['id']);
Чтобы получить ячейку
$model->s_fetchOne("select name from public.users where id=".(int)$this->params['id']) или $model->get("name","id=".(int)$this->params['id']);
Чтобы получить строку
$userData = $model->getRow("id=".(int)$this->params['id']); или $userData = $model->s_fetchRow("select * from users where id=".(int)$this->params['id']);
Чтобы получить набор строк
$users = $model->getAll("name='valera'") или $users = $model->s_fetchAll("select * from users where name='valera'");
Фильтрация строк против инъекций на совести программиста