<?php
class Blog extends DBSQL
{
public $pagesize;
public function __construct()
{
parent::__construct();
$this->pagesize=20;
}
public function GetBlogInfo($blogid)
{
$sql = "SELECT u.*,b.* FROM EE_BLOG_USER u,EM_BLOG_INFO b WHERE u.F_ID_BLOG_INFO = b.F_ID AND b.F_ID = $blogid";
$r = $this->select($sql);
return $r[0];
}
public function CheckBlogExist($id)
{
$sql = "SELECT F_ID FROM EM_BLOG_INFO WHERE F_ID = '$id'";
$r = $this->select($sql);
if($r[0][0]) //判断是否有此ID的记录
{
return true;
}else{
return false;
}
}
public function CheckBlogIsLocked($id)
{
$sql = "SELECT F_BLOG_IS_LOCKED,F_BLOG_PASSWORD FROM EE_BLOG_USER WHERE F_ID_BLOG_INFO = $id";
$r = $this->select($sql);
if($r[0][F_BLOG_IS_LOCKED]) //判断锁定参数是否为1
{
return 2;
}else{
if($r[0][F_BLOG_PASSWORD]==NULL) //判断博客是否设置了密码
{
return 0;
}else{
return 1;//设置了密码
}
}
}
public function GetPostList($blogid,$categories=0,$keyword='',$date='',$status=0,$page=1,$pagesize=0)
{
if(!$pagesize)
$pagesize = $this->pagesize;
$start = ($page - 1) * $pagesize;
$sql = "SELECT c.F_CATEGORIES_NAME,c.F_ID as CatId,p.F_POSTS_IS_COMMENTED,p.F_POSTS_TITLE,
p.F_POSTS_CONTENTS,p.F_ID,p.F_POSTS_COMMENTS,p.F_POSTS_ISSUE_DATE,p.F_POSTS_VIEWS FROM EE_BLOG_CATEGORIES c,EE_BLOG_POSTS p";
$sql .= " WHERE c.F_ID_BLOG_INFO = $blogid AND c.F_ID = p.F_ID_CATEGORIES";
if($categories > 0) //判断是否有分类ID
$sql .= " AND c.F_ID = $categories"; //加入分类条件
if($keyword) //判断是否有关键字
$sql .= " AND (p.F_POSTS_TITLE like '%$keyword%' OR p.F_POSTS_CONTENTS like '%$keyword%')"; //加入关键字条件
if($date) //判断是否有日期,加入日期条件
{
list($year,$month,$day) = explode("-",$date);
$start_date = mktime(0,0,0,$month,$day,$year);
$end_date = mktime(23,59,59,$month,$day,$year);
$sql .= " AND (p.F_POSTS_ISSUE_DATE >= $start_date AND p.F_POSTS_ISSUE_DATE <= $end_date)";
}
switch ($status) //判断提取文章状态
{
case 1: //1为提取公开文章
$sql .= " AND p.F_POSTS_STATUS = 1";
break;
case 2: //2为提取公开和会员查看的文章
$sql .= " AND (p.F_POSTS_STATUS = 1 OR p.F_POSTS_STATUS = 2)";
break;
default:
break;
}
$sql .= " ORDER BY p.F_POSTS_ISSUE_DATE DESC LIMIT $start,$pagesize";
return $this->select($sql);
}
public function GetPostCount($blogid,$categories=0,$keyword='',$date='',$status=0)
{
$sql = "SELECT count(p.F_ID) FROM EE_BLOG_CATEGORIES c,EE_BLOG_POSTS p";
$sql .= " WHERE c.F_ID_BLOG_INFO = $blogid AND c.F_ID = p.F_ID_CATEGORIES";
if($categories > 0) //判断是否有分类ID
$sql .= " AND c.F_ID = $categories"; //加入分类条件
if($keyword) //判断是否有关键字
$sql .= " AND (p.F_POSTS_TITLE like '%$keyword%' OR p.F_POSTS_CONTENTS like '%$keyword%')"; //加入关键字条件
if($date) //判断是否有日期,加入日期条件
{
list($year,$month,$day) = explode("-",$date);
$start = mktime(0,0,0,$month,$day,$year);
$end = mktime(23,59,59,$month,$day,$year);
$sql .= " AND (p.F_POSTS_ISSUE_DATE >= $start AND p.F_POSTS_ISSUE_DATE <= $end)";
}
switch ($status) //判断提取文章状态
{
case 1: //1为提取公开文章
$sql .= " AND p.F_POSTS_STATUS = 1";
break;
case 2: //2为提取公开和会员查看的文章
$sql .= " AND (p.F_POSTS_STATUS = 1 OR p.F_POSTS_STATUS = 2)";
break;
default:
break;
}
$r = $this->select($sql);
return $r[0][0];
}
public function GetCatList($blogid)
{
$sql = "SELECT * FROM EE_BLOG_CATEGORIES WHERE F_ID_BLOG_INFO = $blogid";
$sql .= " ORDER BY F_CATEGORIES_POSTS DESC";
return $this->select($sql);
}
public function GetCommentsList($blogid,$postid=0,$pagesize=0,$page=1)
{
if(!$pagesize) //判断是否指定了显示条数
$pagesize = $this->pagesize; //无则默认为10
$start = ($page - 1) * $pagesize;
$sql = "SELECT * FROM EE_BLOG_COMMENTS WHERE F_ID_BLOG_INFO = $blogid";
if($postid) //判断是否有文章ID
$sql .= " AND F_ID_POSTS_INFO = '$postid'";
$sql .= " ORDER BY F_COMMENTS_DATE DESC LIMIT $start,$pagesize";
return $this->select($sql);
}
public function UpdateCatPosts($catid,$type='+')
{
$sql = "UPDATE EE_BLOG_CATEGORIES SET F_CATEGORIES_POSTS = F_CATEGORIES_POSTS $type 1";
$sql .= " WHERE F_ID = $catid";
return $this->update($sql);
}
public function GetPosts($id)
{
$sql = "SELECT c.F_CATEGORIES_NAME,p.F_POSTS_TITLE,p.F_POSTS_CONTENTS,p.F_POSTS_STATUS";
$sql .= ",p.F_ID,c.F_ID as CatId,p.F_POSTS_IS_COMMENTED,p.F_POSTS_COMMENTS,p.F_POSTS_ISSUE_DATE";
$sql .= ",p.F_POSTS_VIEWS,p.F_POSTS_UPLOAD FROM EE_BLOG_CATEGORIES c,EE_BLOG_POSTS p WHERE p.F_ID = $id";
$r = $this->select($sql);
return $r[0];
}
public function UpdatePostsComments($postid)
{
$sql = "UPDATE EE_BLOG_POSTS SET F_POSTS_COMMENTS = F_POSTS_COMMENTS + 1";
$sql .= " WHERE F_ID = $postid";
return $this->update($sql);
}
public function UpdatePostView($postid) {
$sql = "UPDATE EE_BLOG_POSTS SET F_POSTS_VIEWS = F_POSTS_VIEWS + 1 WHERE F_ID = $postid";
return $this->update($sql);
}
public function GetCommentsCount($postid)
{
$sql = "SELECT COUNT(F_ID) FROM EE_BLOG_COMMETS WHERE F_ID_POSTS_INFO = '$postid'";
$r = $this->select($sql);
return $r[0][0];
}
public function DelClass($catid,$blogid)
{
$this->begintransaction(); //开始事务处理
try{
$sql = "UPDATE EE_BLOG_POSTS SET F_ID_CATEGORIES = 1 WHERE F_ID_CATEGORIES = $catid AND F_ID_BLOG_INFO = $blogid";
$this->update($sql); //转移文章
$sql = "DELETE FROM EE_BLOG_CATEGORIES WHERE F_ID = $catid AND F_ID_BLOG_INFO = $blogid";
$this->delete($sql); //删除分类
}catch (Exception $e){ //捕获异常,回滚
$this->rollback();
return false;
}
$this->commit();
return true;
}
public function DelComments($comid)
{
$r = $this->getInfo($comid,"EE_BLOG_COMMENTS");
$this->begintransaction(); //开始事务处理
try{
$sql = "UPDATE EE_BLOG_POSTS SET F_POSTS_COMMENTS = F_POSTS_COMMENTS - 1 WHERE F_ID = {$r['F_ID_POSTS_INFO']}";
$this->update($sql); //更新文章评论数
$sql = "DELETE FROM EE_BLOG_COMMENTS WHERE F_ID = $comid";
$this->delete($sql); //删除评论
}catch (Exception $e){ //捕获异常,回滚
$this->rollback();
return false;
}
$this->commit();
return true;
}
public function GetSkinsList() {
$sql = "SELECT * FROM em_blog_skins";
return $this->select($sql);
}
public function BlogSet($blogid,$array) {
$this->begintransaction(); //开始事务处理
try {
if(!$array['comment'])
$array['comment']=0;
if(!$array['lock'])
$array['lock']=0;
//print_r($array);
$data = array();
$data['F_BLOG_NAME'] = $array['blogname'];
$data['F_BLOG_DESCRIPTION'] = $array['description'];
$data['F_BLOG_KEYWORDS'] = $array['keyword'];
$data['F_BLOG_DEFAULT_SKINS'] = $array['skins'];
$this->updateData('em_blog_info',$blogid,$data);
$sql = "UPDATE EE_BLOG_USER SET F_BLOG_IS_LOCKED = {$array['lock']},";
$password =$array['password'];
$sql .= "F_BLOG_PASSWORD = '$password',F_BLOG_PERM_COMMENTS = {$array['comment']} WHERE F_ID_BLOG_INFO = $blogid";
//echo $sql;
$this->update($sql);
} catch (Exception $e) {
$this->rollback();
return false;
}
$this->commit();
return true;
}
public function CheckPassword($blogid,$password)
{
//$password = md5($password);
$sql = "SELECT F_ID FROM EE_BLOG_USER WHERE F_ID_BLOG_INFO = $blogid AND F_BLOG_PASSWORD = '$password'";
$r = $this->select($sql);
if($r[0][0]) //检查密码是否正
没有合适的资源?快使用搜索试试~ 我知道了~
一个完整的PHP blog应用,,基本的功能全部都有,还添加了rss。
共50个文件
php:35个
gif:2个
css:2个
需积分: 9 119 下载量 92 浏览量
2010-05-12
23:37:43
上传
评论 4
收藏 252KB ZIP 举报
温馨提示
这是一个完整的PHP blog应用,基本的功能全部都有,还添加了rss,代码简洁,适合PHP初学者或想进阶。照着代码,自己实现一遍,必有长进。
资源推荐
资源详情
资源评论
收起资源包目录
blog.zip (50个子文件)
Blog
style
admin.css 6KB
.buildpath 174B
images
default.gif 839B
feed.png 1KB
register.php 4KB
rss
Rss.php 2KB
1.xml 194B
config.inc.php 410B
admin
DelComments.php 95B
header.php 2KB
UserSet.php 3KB
Class.php 4KB
index.php 904B
Comments.php 1KB
PostList.php 3KB
ClassDel.php 97B
footer.php 75B
Post.php 5KB
DelPost.php 117B
BlogSet.php 4KB
index.php 2KB
3.php 96B
js
Base.js 4KB
.settings
org.eclipse.wst.jsdt.ui.superType.container 49B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.php.core.prefs 84B
.jsdtscope 454B
checkUser.php 346B
include
blog.inc.php 8KB
db.inc.php 5KB
getVerifyImg.php 2KB
function.inc.php 4KB
arial.ttf 359KB
user.inc.php 3KB
.project 702B
1.php 443B
login.php 2KB
upload
20100426
20100426154657.gif 19KB
skins
default
List.php 3KB
Right.php 3KB
header.php 421B
Comments.php 803B
Password.php 2KB
style.css 799B
footer.php 16B
Post.php 4KB
Calendar.php 3KB
2.php 283B
err.php 21B
blog.sql 5KB
共 50 条
- 1
资源评论
Peter_san
- 粉丝: 23
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功