php实现论坛系统,详解PHP论坛实现系统的思路
首先在用户表定义一个积分字段;
然后创建一个等级表,主要字段有等级名,上限积分和下限积分;
再根据用户的行为进行积分累加;
最后根据判断用户积分在哪个等级范围,从而得出用户等级。相关学习推荐:php编程(视频)
用户表CREATE TABLE `bbs`.`user`(
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT comment '用户id',
`avatar` VARCHAR(255) NOT NULL comment '头像',
`nickname` VARCHAR(60) NOT NULL comment '昵称',
`username` VARCHAR(16) NOT NULL comment '用户名',
`password` CHAR(32) NOT NULL comment '密码',
`points` INT(10) NOT NULL DEFAULT '0' comment '积分',
PRIMARY KEY(`id`)
) ENGINE = MYISAM;
等级表CREATE TABLE `bbs`.`level`(
`id` INT(10) UNSIGNED NOT NULL AUTO_INCREMENT comment '等级id',
`name` VARCHAR(60) NOT NULL comment '等级名',
`max_points` INT(10) UNSIGNED NOT NULL comment '积分上限',
`min_points` INT(10) UNSIGNED NOT NULL comment '积分下限',
PRIMARY KEY(`id`)
) ENGINE = MYISAM;
ps:下面看下thinkphp删除图片的方法实现
使用场景:
新头像替换旧的头像
步骤:
1. 读取数据库头像的URL地址
2. 获取URL地址的有效字段
3. file文件路径设置
4. 删除图片文件
Thinkphp 代码如下:<?php
public function delPic(){
//获取用户id
$uid = input('uid');
if(!$uid){
$this->error('uid未获取');
}
//获取url
$img = M('member')->where('uid',$uid);
$url = $img->avatar; //$url = 'http://www.test.com/up/avatar/59b25bcfcaac6.jpg'
if(!$url){
$this->error('获取头像失败');
}
//获取url有效字段(去掉网址)
$str = parse_url($url)['path'].parse_url($url)['query'];//$str = '/up/avatar/59b25bcfcaac6.jpg'
//file文件路径
$filename = '.'.$str;
//删除
if(file_exists($filename)){
unlink($filename);
$info = '原头像删除成功';
}else{
$info = '未找到原头像'.$filename;
}
echo $info;
}相关推荐:编程视频课程
php实现论坛系统,详解PHP论坛实现系统的思路相关推荐
- 海康服务器装win7系统,详解win7旗舰版系统必须重装的四种情况
在使用windows7操作系统过程中,难免会遇到一些故障,比如系统中毒或者无法进入系统等这些情况,可是很多人遇到这些问题并不会想到要重装系统,其实重装的方法很简单,而且也是可以彻底解决那些问题的最佳方 ...
- 关于Discuz X2 论坛备份详解(论坛搬家)
1.适用于论坛搬家,论坛镜像,本地与服务器完美测试,我的就是 最先在服务器上安装并设置好的,然后使用的,但是后来我在自己电脑上也部署了一个服务器,想完整的,一丝不差的把网上的镜像到本地,以此来设置 ...
- ExtJS 4.2 教程-08:布局系统详解
ExtJS 4.2 系列教程导航目录: ExtJS 4.2 教程-01:Hello ExtJS ExtJS 4.2 教程-02:bootstrap.js 工作方式 ExtJS 4.2 教程-03:使用 ...
- Linux系统详解 系统的启动、登录、注销与开关机
Linux系统详解 第六篇:系统的启动.登录.注销与开关机 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://johncai.blo ...
- Redis数据库教程——系统详解学习Redis全过程
Redis数据库教程--系统详解学习Redis全过程 Redis快速入门:Key-Value存储系统简介 Key-Value存储系统: Key-Value Store是当下比较流行的话题,尤其 ...
- ASP.NET MVC Controller激活系统详解:默认实现
Controller激活系统最终通过注册的ControllerFactory创建相应的Conroller对象,如果没有对ControllerFactory类型或者类型进行显式注册(通过调用当前Cont ...
- 健身三大供能系统详解
( 题图来源:http://digitaltrends.com ) 注:这周写肌肉类型的解析,写到一半,发现还是需要把这篇<三大供能系统详解>放上来先,生理学的东西太多涉及到供能系统.这篇 ...
- docker多个容器一起打包_详解Docker 容器基础系统镜像打包
因为容器本身是共享宿主操作系统内核,所以容器基础系统镜像包本身就是一个标准的 Linux rootfs + 用户自定义的工具.根据这个思路,我们就可以构建一个自己的容器基础系统镜像. 构建标准的 Li ...
- linux mount命令衔接,Linux mount命令详解:挂载Linux系统外的文件
Linux mount命令详解:挂载Linux系统外的文件 <Linux挂载>一节讲到,所有的硬件设备必须挂载之后才能使用,只不过,有些硬件设备(比如硬盘分区)在每次系统启动时会自动挂载, ...
最新文章
- 新书上市|鲁智深和镇关西是怎么吵起来的?
- 物联网助推超市转型之具体应用分析
- 全面梳理关系型数据库和 NoSQL 的使用情景
- Leetcode 295. 数据流的中位数
- iOS开发-面试总结(十四)
- 自动瘦脸与眼睛放大美颜算法
- mysql主从同步-问题梳理
- 那些年陪我走过一个又一个加班夜晚的程序员鼓励师们
- php石头剪刀布五局三胜,求程序,下面是剪刀石头布的程序,谁能帮忙改成能选择三局两胜,五局三胜……的?能成功运行的加分...
- javascript将内嵌式广告隐藏
- WEB-UI自动化测试实践
- k1658停运到什么时候_2021年春运就要开始啦!快来看看各大快递的停运时间吧
- 递归的应用之字符串反转
- 有关异或符号'^'在c++编程中的应用
- android的开机动画,设置安卓开机动画、开机logo
- 视频传输的方式有哪些?
- java 中文车牌识别_EasyPR-Java开源中文车牌识别系统工程部署
- 百度地图根据缩放级别显示不同的marker点和窗口内容
- android HierachyViewer使用
- 如何写好科研论文(笔记)