Update
Описание и параметры
int CDatabase::Update( string table, array fields, string where = "", string error_position = "", bool debug = false, bool ignore_errors = false, string additional_check=true )
Метод изменяет записи в таблицы table значениями полей fields. Возвращает количество измененных записей. Нестатический метод.
Примечание: все значения полей должны быть подготовлены для SQL запроса, например, при помощи метода CDatabase::ForSql.
Параметры
Параметр | Описание | С версии |
---|---|---|
table | Название таблицы. | |
fields | Массив вида значений полей "поле"=>"значение",... | |
where | Ограничение для WHERE в формате SQL Необязательный. По умолчанию все записи в таблице будут изменены. | |
error_position | Строка идентифицирующая позицию в коде, откуда был вызван метод CDatabase::Update. Если в SQL запросе будет ошибка и если в файле /bitrix/php_interface/dbconn.php установлена переменная $DBDebug=true;, то на экране будет выведена данная информация и сам SQL запрос. | |
debug | Если значение - "true", то на экран будет выведен текст SQL запроса. | |
ignore_errors | если значение "true", то в случае ошибки возникшей в результате выполнения SQL запроса, она будет проигнорирована и работа скрипта продолжена. | 3.2.7 |
additional_check | Необязательный. По умолчанию true. | 5.1.7 |
Смотрите также
Примеры использования
<? if (strlen($save)>0) { if (CheckFields()) { $DB->PrepareFields("b_form"); $arFields = array( "TIMESTAMP_X" => $DB->GetNowFunction(), "NAME" => "'".trim($str_NAME)."'", "VARNAME" => "'".trim($str_VARNAME)."'", "C_SORT" => "'".intval($str_C_SORT)."'", "FIRST_SITE_ID" => "'".$DB->ForSql($FIRST_SITE_ID,2)."'", "BUTTON" => "'".$str_BUTTON."'", "DESCRIPTION" => "'".$str_DESCRIPTION."'", "DESCRIPTION_TYPE" => "'".$str_DESCRIPTION_TYPE."'", "SHOW_TEMPLATE" => "'".trim($str_SHOW_TEMPLATE)."'", "MAIL_EVENT_TYPE" => "'".$DB->ForSql("FORM_FILLING_".$str_VARNAME,50)."'", "SHOW_RESULT_TEMPLATE" => "'".trim($str_SHOW_RESULT_TEMPLATE)."'", "PRINT_RESULT_TEMPLATE" => "'".trim($str_PRINT_RESULT_TEMPLATE)."'", "EDIT_RESULT_TEMPLATE" => "'".trim($str_EDIT_RESULT_TEMPLATE)."'", "FILTER_RESULT_TEMPLATE" => "'".trim($str_FILTER_RESULT_TEMPLATE)."'", "TABLE_RESULT_TEMPLATE" => "'".trim($str_TABLE_RESULT_TEMPLATE)."'", "STAT_EVENT1" => "'".trim($str_STAT_EVENT1)."'", "STAT_EVENT2" => "'".trim($str_STAT_EVENT2)."'", "STAT_EVENT3" => "'".trim($str_STAT_EVENT3)."'" ); $DB->StartTransaction(); if ($ID>0) { $DB->Update("b_form", $arFields, "WHERE ID='".$ID."'", $err_mess.__LINE__); } else { $ID = $DB->Insert("b_form", $arFields, $err_mess.__LINE__); $new="Y"; } $ID = intval($ID); if (strlen($strError)<=0) { $DB->Commit(); if (strlen($save)>0) LocalRedirect("form_list.php?lang=".LANGUAGE_ID); elseif ($new=="Y") LocalRedirect("form_edit.php?lang=".LANGUAGE_ID."&ID=".$ID); } else $DB->Rollback(); } } ?>
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.