### update
**修改數據,該函數將根據參數中設置的條件而更新表中數據**
**參數**
conditions 數組形式,查找條件,此參數的格式用法與find/findAll的查找條件參數是相同的。
row 數組形式,修改的數據,
\* 此參數的格式用法與create的$row是相同的。在符合條件的記錄中,將對$row設置的字段的數據進行修改。
~~~
public function update($conditions, $row) {
$where = "";
$row = $this->__prepera_format ( $row );
if (empty ( $row ))
return FALSE;
if (is_array ( $conditions )) {
$join = array ();
foreach ( $conditions as $key => $condition ) {
$condition = $this->__val_escape ( $condition );
$join [] = "{$key} = '{$condition}'";
}
$where = "WHERE " . join ( " AND ", $join );
} else {
if (null != $conditions)
$where = "WHERE " . $conditions;
}
foreach ( $row as $key => $value ) {
$value = $this->__val_escape ( $value );
//2011-01-04修改
//if ($value == 'NULL')
if ($value === 'NULL')
//2011-01-04修改
$vals [] = "{$key} = NULL";
else
$vals [] = "{$key} = '{$value}'";
}
$values = join ( ", ", $vals );
$sql = "UPDATE {$this->tbl_name} SET {$values} {$where}";
//echo $sql;
return $this->_db->query ( $sql );
}
~~~
- 架構
- 基礎框架文檔
- base/action(C層基類)
- protected 類定義
- __construct構造函數
- c_list
- c_index
- c_page
- c_pageJson
- c_listJson
- c_getByAjax
- c_getCountByName
- c_toAdd
- c_add
- c_init
- c_edit
- c_deletes
- c_ajaxdeletes
- c_saveBatch
- c_checkRepeat
- getDatadicts
- showDatadicts
- getDataNameByCode
- assign
- display
- view
- assignFunc
- model/base(M層基類)
- protected類定義(model)
- __construct
- find
- get_table_fields
- findAll
- findSql
- create
- delete
- findBy
- updateField
- query
- findCount
- update
- filterFunc
- filterField
- filterWithoutField
- filterCustom
- createBatch
- pageBySql
- listBySql
- pageBySqlId
- deletes
- 事務控制
- 獲取對象數組
- addBatch_d
- add_d
- edit_d
- isRepeat
- 列表組件文檔
- 基礎表格
- 數據獲取
- 表格數據顯示
- 常用控制參數
- 表格右鍵擴展
- 表格擴展按鈕
- 快速搜索
- 高級搜索(自定義視圖)
- 表格注冊事件
- 主從表格
- 可編輯表格
- 模塊開發
- 開發案例
- 開發準則