当前位置:首页 > PHP教程 > php高级应用 > 列表

PHP论坛实现积分系统的思路代码详解

发布:smiling 来源: PHP粉丝网  添加日期:2022-03-11 09:35:58 浏览: 评论:0 

这篇文章主要介绍了PHP论坛实现积分系统的思路,本文通过实例代码给大家介绍的非常详细,文中通过代码给大家补充介绍了thinkphp删除图片的方法实现代码,需要的朋友可以参考下。

首先在用户表定义一个积分字段;

然后创建一个等级表,主要字段有等级名,上限积分和下限积分;

再根据用户的行为进行积分累加;

最后根据判断用户积分在哪个等级范围,从而得出用户等级。

用户表

  1. CREATE TABLE `bbs`.`user`( 
  2.  `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT comment '用户id'
  3.  `avatar` VARCHAR(255) NOT NULL comment '头像'
  4.  `nickname` VARCHAR(60) NOT NULL comment '昵称'
  5.  `username` VARCHAR(16) NOT NULL comment '用户名'
  6.  `passwordCHAR(32) NOT NULL comment '密码'
  7.  `points` INT(10) NOT NULL DEFAULT '0' comment '积分'
  8.  PRIMARY KEY(`id`) 
  9. ) ENGINE = MYISAM; 

等级表

  1. CREATE TABLE `bbs`.`level`( 
  2.  `id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT comment '等级id'
  3.  `nameVARCHAR(60) NOT NULL comment '等级名'
  4.  `max_points` INT(10) UNSIGNED NOT NULL comment '积分上限'
  5.  `min_points` INT(10) UNSIGNED NOT NULL comment '积分下限'
  6.  PRIMARY KEY(`id`) 
  7. ) ENGINE = MYISAM; 

ps:下面看下thinkphp删除图片的方法实现

使用场景:

新头像替换旧的头像

步骤:

1. 读取数据库头像的URL地址

2. 获取URL地址的有效字段

3. file文件路径设置

4. 删除图片文件

Thinkphp 代码如下:

  1. <?php 
  2. public function delPic(){ 
  3.   //获取用户id 
  4.   $uid = input('uid'); 
  5.   if(!$uid){ 
  6.     $this->error('uid未获取'); 
  7.   } 
  8.   //获取url 
  9.   $img = M('member')->where('uid',$uid); 
  10.   $url = $img->avatar; //$url = 'http://www.test.com/up/avatar/59b25bcfcaac6.jpg' 
  11.   if(!$url){ 
  12.     $this->error('获取头像失败'); 
  13.   } 
  14.   //获取url有效字段(去掉网址) 
  15.   $str = parse_url($url)['path'].parse_url($url)['query'];//$str = '/up/avatar/59b25bcfcaac6.jpg' 
  16.   //file文件路径 
  17.   $filename = '.'.$str
  18.   //删除 
  19.   if(file_exists($filename)){     
  20.     unlink($filename); 
  21.     $info = '原头像删除成功'
  22.   }else
  23.     $info = '未找到原头像'.$filename
  24.   } 
  25.   echo $info
  26. }

Tags: PHP论坛积分系统

分享到: