PHP前端页面二次发或优化
2 篇帖子 分页: 1 / 1
帖子fengqx0751 » 2014年 12月 2日 13:17 星期二
给users表添加一个ip字段的步骤:

首先添加文本框,打开forms.inc.php,找到 if(isset($userid) && (!isset($_REQUEST['form_refresh']) || isset($_REQUEST['register']))){
往里添加$userip ,修改后的效果:
代码: 全选
if(isset($userid) && (!isset($_REQUEST['form_refresh']) || isset($_REQUEST['register']))){
         $alias      = $user['alias'];
         $name      = $user['name'];
         $surname   = $user['surname'];
         $password   = null;
         $password1   = null;
         $password2   = null;
         $url      = $user['url'];
         $autologin   = $user['autologin'];
         $autologout   = $user['autologout'];
         $lang      = $user['lang'];
         $theme      = $user['theme'];
         //添加的字段
         $userip      = $user['userip'];
         $refresh   = $user['refresh'];
         $rows_per_page   = $user['rows_per_page'];
         $user_type   = $user['type'];
      }else{
         $alias      = get_request('alias','');
         $name      = get_request('name','');
         $surname   = get_request('surname','');
         $password   = null;
         $password1   = get_request('password1', '');
         $password2   = get_request('password2', '');
         $phone      = get_request('phone','');
         $eml      = get_request('eml','');
         $nalev      = get_request('flow_type',1);
         $url      = get_request('url','');
         $autologin   = get_request('autologin',0);
         $autologout   = get_request('autologout',90);
         $lang      = get_request('lang','en_gb');
         $theme      = get_request('theme','default.css');
         //添加的字段
         $userip      =  get_request('userip','');;
      }
   //添加一行文本框
   [color=#BF0000]$frmUser->addRow(S_THEME, $cmbTheme);[/color]
   //添加这一行
   [color=#FF0000]$frmUser->addRow(S_IP_RANGE,   array(new CTextBox('userip',$userip,40)));[/color]
 


其次打开users.php,找到$fields数组,在这个数组里增加 'userip'=> array(T_ZBX_STR, O_OPT, null, NOT_EMPTY, 'isset({save})'),
代码: 全选
$fields=array(
        //修改后效果
         'userip'=>   array(T_ZBX_STR, O_OPT,   null,   NOT_EMPTY,   'isset({save})'),
   );
   


找到添加修改数据的位置,if(isset($_REQUEST['save'])){

修改后效果:
代码: 全选
if(isset($_REQUEST['save'])){

         $user = array();
         $user['name'] = get_request('name');
         $user['surname'] = get_request('surname');
         $user['alias'] = get_request('alias');
            //添加一个接收userip
         $user['userip'] = get_request('userip');
         $user['passwd'] = get_request('password1');
         $user['phone'] = get_request('phone');
         $user['eml'] = get_request('eml');
         $user['nalev'] = get_request('flow_type');
         $user['url'] = get_request('url');
         $user['autologin'] = get_request('autologin', 0);
         $user['autologout'] = get_request('autologout', 0);
         $user['lang'] = get_request('lang');
         $user['theme'] = get_request('theme');
         $user['refresh'] = get_request('refresh');
         $user['rows_per_page'] = get_request('rows_per_page');
         $user['type'] = get_request('user_type');
         $user['user_medias'] = get_request('user_medias', array());     
         $usrgrps = get_request('user_groups', array());
         $usrgrps = zbx_toObject($usrgrps, 'usrgrpid');
         $user['usrgrps'] = $usrgrps;

         if(isset($_REQUEST['userid'])){
            //按住键盘ctrl键,鼠标点击即可找到update方法
            $result = CUser::update($user);
         }else{
            //按住键盘ctrl键,鼠标点击即可找到create方法
            $result = CUser::create($user);
         }


CUser::update方法里添加userip

代码: 全选
$sql = 'UPDATE users SET '.
                  ' name='.zbx_dbstr($user['name']).', '.
                  ' surname='.zbx_dbstr($user['surname']).', '.
                  ' alias='.zbx_dbstr($user['alias']).', '.
                        ' userip='.zbx_dbstr($user['userip']).', '.
                  ' passwd='.zbx_dbstr($user['passwd']).', '.
                  ' url='.zbx_dbstr($user['url']).', '.
                  ' autologin='.$user['autologin'].', '.
                  ' autologout='.$user['autologout'].', '.
                  ' lang='.zbx_dbstr($user['lang']).', '.
                  ' theme='.zbx_dbstr($user['theme']).', '.
                  ' refresh='.$user['refresh'].', '.
                  ' rows_per_page='.$user['rows_per_page'].', '.
                  ' type='.$user['type'].
               ' WHERE userid='.$user['userid'];


CUser::create方法里添加userip

代码: 全选
foreach($users as $unum => $user){
         $user_db_fields = array(
            'name' => 'ZABBIX',
            'surname' => 'USER',
            'alias' => null,
            'userip' => '',
            'passwd' => 'zabbix',
            'url' => '',
            'autologin' => 0,
            'autologout' => 900,
            'lang' => 'en_gb',
            'theme' => 'default.css',
            'refresh' => 30,
            'rows_per_page' => 50,
            'type' => USER_TYPE_ZABBIX_USER,
            'user_medias' => array(),
         );
         $result = DBexecute('INSERT INTO users (userid, name, surname, alias, userip,passwd, url, autologin, autologout, lang, theme,
            refresh, rows_per_page, type) '.
            ' VALUES ('.
               $userid.','.
               zbx_dbstr($user['name']).','.
               zbx_dbstr($user['surname']).','.
               zbx_dbstr($user['alias']).','.
               zbx_dbstr($user['userip']).','.
               zbx_dbstr(md5($user['passwd'])).','.
               zbx_dbstr($user['url']).','.
               $user['autologin'].','.
               $user['autologout'].','.
               zbx_dbstr($user['lang']).','.
               zbx_dbstr($user['theme']).','.
               $user['refresh'].','.
               $user['rows_per_page'].','.
               $user['type'].
            ')');


至此完成,效果如图:
userip.jpg
登录后可见。
帖子mxj333 » 2014年 12月 9日 08:05 星期二
这个方法适用于zabbix1.8.x的,不适合ZABBIX2.x。
zabbix中文论坛:http://www.zabbix.net.cn 或者 www.zabbix.org.cn
2 篇帖子 分页: 1 / 1

登录

在线用户

正在浏览此版面的用户:没有注册用户 和 1 位游客