getsession('isadmin')!='1')backmsg('别乱来'); if(getconfig('systype')=='demo')backmsg('演示的不要改'); } public function tablebefore($table) { $key = $this->post('key'); $where = 'and `TABLE_SCHEMA`=\''.DB_BASE.'\''; if($key!='')$where.=" and (`TABLE_NAME` like '%$key%' or `TABLE_COMMENT` like '%$key%')"; return array( 'table' => 'information_schema.`TABLES`', 'fields'=> '`TABLE_NAME` as id,`ENGINE` as `engine`,`TABLE_ROWS` as `rows`,`TABLE_COMMENT` as `explain`,`CREATE_TIME` as `cjsj`,`UPDATE_TIME` as `gxsj`,`TABLE_COLLATION`', 'where' => $where ); } //保存表备注 public function tablesmAjax() { $id = $this->post('id'); $value = $this->post('value'); $sql = "ALTER TABLE `$id` COMMENT '$value';"; $this->db->query($sql); return 'success'; } public function tablefieldsAjax() { $table = $this->post('table'); $rows = $this->db->gettablefields($table); foreach($rows as $k=>$rs)$rows[$k]['id']=$rs['name']; $arr['rows'] = $rows; $this->returnjson($arr); } public function savefieldsAjax() { $table = $this->post('table'); $allfields = $this->db->getallfields($table); $name = strtolower($this->post('name')); if(c('check')->isincn($name))backmsg('字段名不能有中文'); $type = $this->post('type'); $dev = $this->post('dev'); $isnull = $this->post('isnull'); if($table=='' || $name=='' || $type=='')backmsg('hehe'); $lens = $this->post('lens'); $sm = $this->post('explain'); $sql = "ALTER TABLE `$table`"; if(!in_array($name, $allfields)){ $sql.=' ADD'; }else{ $sql.=' MODIFY'; } $sql.=" `$name`"; $cew = '[varchar][mediumint][int][bigint][smallint][tinyint][decimal]'; if(contain($cew,'['.$type.']')){ if($lens=='0')$lens='10'; $sql.=" $type($lens)"; }else{ $sql.=" $type"; } if($isnull=='NO')$sql.=' NOT NULL'; if($dev==''){ //$sql.=' DEFAULT NULL'; }else{ $sql.=" DEFAULT '$dev'"; } $sql.=" COMMENT '$sm'"; $bo = $this->db->query($sql); $msg = ''; if(!$bo)$msg='错误《'.$sql.'》'; backmsg($msg); } public function delfieldsAjax() { $table = $this->post('table'); $id = $this->post('id'); $sql = "ALTER table `$table` DROP COLUMN `$id`;"; $msg = ''; $bo = $this->db->query($sql); if(!$bo)$msg='错误《'.$sql.'》'; backmsg($msg); } public function tablerecord_before() { $stable = $this->post('stable','', 1); $key = $this->post('key'); $fid = $this->post('fields','id'); $this->nowtablename = $stable; $where = ''; if(!isempt($key))$where=" and `$fid`='$key'"; return array( 'table' => $stable, 'order' => 'id desc', 'where' => $where ); } public function tablerecord_after($table, $rows) { $fieldsar = array(); if($this->loadci==1){ $fieldsarr = $this->db->gettablefields($this->nowtablename); foreach($fieldsarr as $k1=>$rs1){ $sortable = in_array($rs1['type'], array('int','date','datetime','tinyint','smallint','decimal')); $text = $rs1['name']; if(!isempt($rs1['explain']))$text.='('.$rs1['explain'].')'; $fieldsar[] = array( 'text' => $text, 'dataIndex' => $rs1['name'], 'sortable' => $sortable ); } } return array( 'fieldsarr' => $fieldsar ); } }