public function update_avatar() { if (!is_login()) { return $this->un_login(); } $uid = get_session_uid(); $this->load->helper('upload'); $save_result = save_avatar($this, $uid); if (is_ok_result($save_result)) { $avatar = $save_result['data']; // 新的头像地址 $update_result = $this->user_model->update_by_id($uid, array('avatar' => $avatar)); if (!$update_result) { log_message('error', 'update_avatar db failed'); // 删除文件,因为并没有更新成功 delete_avatar($avatar); return $this->ex(90303); } else { delete_old_avatar($this, $avatar); // 删除老的头像文件 set_user_field('avatar', $avatar); // 更新session return $this->ok($avatar); } } else { return $this->ex(90302); } }
############################################################################################ case 'addload': $uid = check($_GET['uid']); if ($uid == $_SESSION['token']) { if (is_uploaded_file($_FILES['avatar']['tmp_name'])) { $avatarname = check(strtolower($_FILES['avatar']['name'])); $avatarsize = getimagesize($_FILES['avatar']['tmp_name']); if (strrchr($avatarname, '.') == '.gif') { if ($_FILES['avatar']['size'] > 0 && $_FILES['avatar']['size'] <= $config['avatarweight']) { if ($avatarsize[0] == $config['avatarsize'] && $avatarsize[1] == $config['avatarsize']) { if ($udata['users_point'] >= $config['avatarpoints']) { if ($udata['users_money'] >= $config['avatarupload']) { move_uploaded_file($_FILES['avatar']['tmp_name'], BASEDIR . '/upload/avatars/' . $log . '.gif'); chmod(BASEDIR . '/upload/avatars/' . $log . '.gif', 0666); DB::run()->query("UPDATE `users` SET `users_money`=`users_money`-?, `users_avatar`=? WHERE `users_login`=?;", array($config['avatarupload'], 'upload/avatars/' . $log . '.gif', $log)); save_avatar(); echo '<img src="/images/img/open.gif" alt="image" /> <b>Аватар успешно загружен!</b><br />'; echo 'C вашего счета списано ' . moneys($config['avatarupload']) . '<br /><br />'; } else { show_error('Ошибка! На вашем счете недостаточно средств!'); } } else { show_error('Ошибка! Недостаточное количество актива, необходимо набрать более ' . points($config['avatarpoints']) . '!'); } } else { show_error('Ошибка! Размер аватара должен быть ' . $config['avatarsize'] . '*' . $config['avatarsize'] . ' px'); } } else { show_error('Ошибка! Вес аватара должен быть не более чем ' . formatsize($config['avatarweight']) . '!'); } } else {