function saveSelf() { $this->begin('index.php?ctl=admin/profile&act=operator'); $oOpt =& $this->system->loadModel('admin/operator'); if ($_POST['changepwd']) { $row = $oOpt->instance($this->system->op_id, 'userpass,username'); $_pwd = md5(md5($_POST['oldpass']) . $row['username']); $_pwd = substr($_pwd, 0, 31); $_POST['oldpass'] = '******' . $_pwd; if ($_POST['oldpass'] != $row['userpass']) { $this->end(false, __('请输入正确的当前密码')); } if ($_POST['userpass'] != $_POST['passowrd_again']) { $this->end(false, __('两次密码输入不一致')); } } else { unset($_POST['userpass']); } array_key_filter($_POST, 'userpass,timezone'); $oOpt->update($_POST, array('op_id' => $this->system->op_id)); $_POST['op_id'] = $this->system->op_id; $oProfile =& $this->system->loadModel('adminprofile'); $oProfile->load($this->system->op_id); $this->end($oOpt->toUpdateSelf($_POST, $oProfile->setting()), __('信息保存成功')); }
function array_array_key_filter($array, $key, $inArray = true) { $returnArr = array(); foreach ($array as $k => $v) { if (is_array($array)) { $line = array_key_filter($v, $key, $inArray); array_push($returnArr, $line); } else { return array_key_filter($array, $key, $inArray); } } return $returnArr; }
function saveSelf() { $this->begin('index.php?ctl=admin/profile&act=operator'); $oOpt = $this->system->loadModel('admin/operator'); if ($_POST['changepwd']) { $row = $oOpt->instance($this->op->opid, 'userpass'); if (md5($_POST['oldpass']) != $row['userpass']) { trigger_error('请输入正确的当前密码', E_USER_ERROR); } if ($_POST['userpass'] != $_POST['passowrd_again']) { trigger_error('两次密码输入不一致', E_USER_ERROR); } } else { unset($_POST['userpass']); } array_key_filter($_POST, 'userpass,timezone'); $oOpt->update($_POST, array('op_id' => $this->op->opid)); $_POST['op_id'] = $this->op->opid; $oProfile = $this->system->loadModel('adminProfile'); $oProfile->load($this->op->opid); $this->end($oOpt->toUpdateSelf($_POST, $oProfile->setting()), '信息保存成功'); }
function saveMember() { foreach ($_POST as $kec => $kev) { $_POST[$kec] = strip_tags($kev); } for ($i = 0; $i <= 100; $i++) { if (preg_match('/^(19|20)[0-9]{2}-([1-9]|0[1-9]|1[012])-([1-9]|0[1-9]|[12][0-9]|3[01])+$/', $_POST[$i])) { $_POST[$i] = strtotime($_POST[$i]); } } $post = array_keys($_POST); for ($i = 0; $i < count($post); $i++) { if (is_numeric($post[$i])) { $custom[] = $post[$i]; } } array_key_filter($_POST, 'area,addr,name,mobile,tel,zip,sex,date,pw_question,pw_answer,cur,email,birthday,b_year,b_month,b_day,is_register,def_addr,plugUrl,' . implode(',', $custom)); $memc_da = $_POST; $memc_da['uname'] = $_COOKIE['UNAME']; $this->system->setcookie('CUR', $_POST['cur'], null); $oMem =& $this->system->loadModel('member/member'); if ($_POST['name']) { if (!preg_match('/^[^\\x00-\\x2f^\\x3a-\\x40]{2,20}$/i', $_POST['name']) && !is_numeric($_POST['name'][0])) { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('姓名包含非法字符!')); } } if ($_POST['email']) { if (!preg_match('/.+@.+$/', $_POST['email'])) { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('请填写正确格式的电子邮件地址')); } } if ($_POST['birthday']) { list($_POST['b_year'], $_POST['b_month'], $_POST['b_day']) = explode('-', $_POST['birthday']); } $mobile = $oMem->getBasicInfoById($this->member['member_id']); //获取数据库的注册信息 $memc_da['passwd'] = '密码已加密'; //echo "<pre>";var_dump($mobile);exit; if ($oMem->save($this->member['member_id'], $_POST)) { //注册填写手机时发送短信和邮件,待优化 if ($memc_da['mobile'] && $mobile['password'] && !$mobile['mobile']) { //注册会员第一次编辑手机时发送短信,修改不发 $acc_mod = $this->system->loadModel("member/account"); $acc_mod->fireEvent('register', $memc_da, $this->member['member_id']); } //如果和注册符合收货条件的,存为默认收货地址 if ($_POST['is_register'] && $_POST['name'] && ($_POST['tel'] || $_POST['mobile']) && $_POST['addr']) { $_POST['def_addr'] = 1; $member =& $this->system->loadModel('member/member'); $member->insertRec($_POST, $this->member['member_id']); } if ($_POST['plugUrl']) { $url = $_POST['plugUrl']; } else { $url = $this->system->mkUrl("member"); } $allkeys = array_keys($_POST); $count = 0; for ($i = 0; $i < count($allkeys); $i++) { if (is_numeric($allkeys[$i])) { if (!is_array($_POST[$allkeys[$i]])) { $memattr[$count]['member_id'] = $this->member['member_id']; $memattr[$count]['attr_id'] = $allkeys[$i]; $memattr[$count]['value'] = htmlspecialchars($_POST[$allkeys[$i]]); $oMem->updateMemAttr($this->member['member_id'], $allkeys[$i], $memattr[$count]); $count++; } else { $tmp = $_POST[$allkeys[$i]]; $oMem->deleteMattrvalues($allkeys[$i], $this->member['member_id']); for ($j = 0; $j < count($tmp); $j++) { $tmpdate['member_id'] = $this->member['member_id']; $tmpdate['attr_id'] = $allkeys[$i]; $tmpdate['value'] = htmlspecialchars($tmp[$j]); $oMem->saveMemAttr($tmpdate); } } } } $this->splash('success', $url, __('提交成功')); } else { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('提交失败')); } }
function saveMember() { $post = array_keys($_POST); for ($i = 0; $i < count($post); $i++) { if (is_numeric($post[$i])) { $custom[] = $post[$i]; } } array_key_filter($_POST, 'area,addr,name,mobile,tel,zip,sex,date,pw_question,pw_answer,cur,email,birthday,b_year,b_month,b_day,is_register,def_addr,plugUrl,' . implode(',', $custom)); $this->system->setcookie('CUR', $_POST['cur'], null); $oMem = $this->system->loadModel('member/member'); if ($_POST['name']) { if (!preg_match('/^[^\\x00-\\x2f^\\x3a-\\x40]{2,20}$/i', $_POST['name']) && !is_numeric($_POST['name'][0])) { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('姓名包含非法字符!')); } } if ($_POST['email']) { if (!preg_match('/.+@.+$/', $_POST['email'])) { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('请填写正确格式的电子邮件地址')); } } if ($_POST['birthday']) { $aTmp = explode('-', $_POST['birthday']); $_POST['b_year'] = $aTmp[0]; $_POST['b_month'] = $aTmp[1]; $_POST['b_day'] = $aTmp[2]; } if ($oMem->save($this->member['member_id'], $_POST)) { //如果和注册符合收货条件的,存为默认收货地址 if ($_POST['is_register'] && $_POST['name'] && ($_POST['tel'] || $_POST['mobile']) && $_POST['addr']) { $_POST['def_addr'] = 1; $member = $this->system->loadModel('member/member'); $member->insertRec($_POST, $this->member['member_id']); } if ($_POST['plugUrl']) { $url = $_POST['plugUrl']; } else { $url = $this->system->mkUrl("member"); } $allkeys = array_keys($_POST); $count = 0; for ($i = 0; $i < count($allkeys); $i++) { if (is_numeric($allkeys[$i])) { if (!is_array($_POST[$allkeys[$i]])) { $memattr[$count]['member_id'] = $this->member['member_id']; $memattr[$count]['attr_id'] = $allkeys[$i]; $memattr[$count]['value'] = htmlspecialchars($_POST[$allkeys[$i]]); $oMem->updateMemAttr($this->member['member_id'], $allkeys[$i], $memattr[$count]); $count++; } else { $tmp = $_POST[$allkeys[$i]]; $oMem->deleteMattrvalues($allkeys[$i], $this->member['member_id']); for ($j = 0; $j < count($tmp); $j++) { $tmpdate['member_id'] = $this->member['member_id']; $tmpdate['attr_id'] = $allkeys[$i]; $tmpdate['value'] = htmlspecialchars($tmp[$j]); $oMem->saveMemAttr($tmpdate); } } } } $this->splash('success', $url, __('提交成功')); } else { $this->splash('failed', $this->system->mkUrl("member", "setting"), __('提交失败')); } }