int CDatabase::Update( string table, array fields, string where = "", string error_position = "", bool debug = false, bool ignore_errors = false )
The method Update updates records in the table with the valued passed in fields.
Note
Values of all fields must be prepared for an SQL query (for example using the method CDatabase::ForSql).
Parameter | Description |
---|---|
table | Name of the table. |
fields | Array of field values in the format "field"=>"value",... |
where | Condition for the WHERE statement in the SQL format. Optional; all records are updated by default. |
error_position | String indicating the method call position in the code (e.g. __LINE__ ). If an SQL query fails and the file /bitrix/php_interface/dbconn.php has the variable $DBDebug=true;, the error_position and the failure SQL
query are printed. |
debug | If set to true, the method prints the text of an SQL query. |
ignore_errors | Specifies to ignore errors. If set to true, the method ignores any SQL errors and continues execution. Optional; false by default. |
Returns the number of updated records.
<? 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-2005 Bitrix | Bitrix Site Manager - Content Management & Portal Solutions |