用PHP完成简易博客系统
因为项目需要简单的完成一个页面接收参数并且操作数据库的过程,在老师的指引下决定通过一个博客小项目加深自己的理解。
学习路线是用一天的时间大概熟悉了HTML和PHP的语法,然后结合一些视频课程和相关博客完成目标,这里只完成了博客的基本功能,想要扩展可以自行研究。整体内容参考网易云课堂的PHP100课程的第9,10两节,因为界面没有使用CSS,所以比较丑,但功能还是全面的,主页效果图如下
准备工作:安装wamp集成开发环境
首先在wamp中创建一个blog表,完全图形化的操作,注意的是需要根据自己添加的字段选择合适的类型及长度
然后在wamp的按照目录下找到www文件夹,在其中创建blog文件夹,作为我们的操作目录
第一步是创建conn.php文件,用来连接我们的test数据库,账号密码由自己设定,默认账号是root,密码为空,我这里之前设置过密码为root,两行代码就完成了数据库的连接。
<?php$link=new mysqli('127.0.0.1','root','root','test'); mysqli_select_db($link, "test")or die("数据库连接失败"); //选择操作的数据库
?>
第二步创建add.php文件,进行博客的写操作
<a href="index.php"><b>首页</b></a>
<hr> <!--创建一条水平线--><?phpinclude("conn.php"); //引入连接数据库if (!empty($_POST['sub'])) { $title = $_POST['title']; //获取title表单内容$con = $_POST['con']; //获取contents表单内容 $sql="insert into blog values(null,'$title',now(),'$con')";// null用来占位4,因为已经设置为自增mysqli_query($link, $sql); //执行插入语句 echo "<script>alert('博客创建成功!');location.href='index.php'</script>";//echo "成功创建新的博客!";}
?><form action="add.php" method="post"> <!-- action 属性规定当提交表单时,向何处发送表单数据-->标题:<br><input type="text" name="title"><br><br>内容:<br><textarea rows="10" cols="100" name="con"></textarea><br><br> <!--textarea> 标签定义多行的文本输入控件,规定了文本区的可见行数和宽度--><input type="submit" name="sub" value="提交">
</form>
第三步创建主页,建立index.php文件,代码中包含了HTML和PHP的混编,注意区分
首页的第一部分是一个搜索功能,通过关键字对博客的标题进行模糊搜索,第二部分会循环打印每一篇博客,但是可以通过MySQL的查询语句限制展示博客数量,并且对博客内容进行了截取显示
<h2>欢迎来到我的博客</h2>
<a href="index.php"><b>首页</b></a>
<a href="add.php"><b>写博客</b></a>
<hr>
<form action="index.php" method="get"><input type="text" name="keys"><input type="submit" name="sub" value="搜索">
</form><?phpinclude ("conn.php");if(!empty($_GET['sub'])){$key=$_GET['keys'];$t = " title like '%$key%'";//echo "$t";//$t = 1;}else{$t = 1;}$sql ="select * from blog where $t order by id desc limit 5";$query = mysqli_query($link, $sql); // 执行一次while($rs = mysqli_fetch_array($query)){ //循环打印每一篇博客?>
<h2>标题:<a href="view.php?id=<?php echo $rs['id'];?>"><?php echo $rs['title'];?></a> </h2>
<li><?php echo $rs['data']?></li>
<!--截取部分长度内容进行展示-->
<p><?php echo iconv_substr($rs['contents'],0,10,"utf-8"); ?></p>
<?php
}
?>
第四步创建view.php文件,这里比较简单,只完成博客的展示
<?phpinclude("conn.php"); //引入连接数据库if(!empty($_GET['id'])){$id = $_GET['id'];$sql = "select * from blog where id='$id'";$query = mysqli_query($link, $sql);$rs = mysqli_fetch_array($query);}
?><h2>题目 :<?php echo $rs['title'];?></h2>
<h3>日期 :<?php echo $rs['data'];?></h3>
<p><a href="index.php">首页</a> |<a href="edit.php?id=<?php echo $rs['id'];?>">编辑博客</a> | <a href="del.php?id=<?php echo $rs['id'];?>">删除博客</a> </p>
<hr>
<p><?php echo $rs['contents']?></p>
第五步创建edit.php,对博客进行修改操作代码包含两部分,第一部分是博客内容在指定位置的展示,第二部分是完成内容的更新
<a href="index.php"><b>首页</b></a>
<a href="add.php"><b>写博客</b></a>
<hr> <!--创建一条水平线--><?phpinclude("conn.php"); //引入连接数据库if(!empty($_GET['id'])){$edit = $_GET['id'];$sql = "select * from blog where id='$edit'";$query = mysqli_query($link, $sql);$rs = mysqli_fetch_array($query);}if (!empty($_POST['sub'])) { $title = $_POST['title']; //获取title表单内容$con = $_POST['con']; //获取contents表单内容 $hid = $_POST['hid'];$sql="update blog set title='$title', contents='$con' where id='$hid'";mysqli_query($link, $sql); //执行插入语句 echo "<script>alert('博客修改成功!');location.href='index.php'</script>";}
?><form action="edit.php" method="post"><input type="hidden" name="hid" value="<?php echo $rs['id'];?>">标题:<br><input type="text" name="title" value="<?php echo $rs['title'];?>"><br><br>内容:<br><textarea rows="10" cols="100" name="con" ><?php echo $rs['contents'];?></textarea><br><br><input type="submit" name="sub" value="提交">
</form>
第六步创建del.php,完成博客的删除操作
<?php include("conn.php"); //引入连接数据库if (!empty($_GET['id'])) { $del = $_GET['id']; //删除blog $sql="delete from blog where id='$del' ";mysqli_query($link, $sql); //echo "删除成功!"; header("Location:index.php"); //删除后跳转}
?>
至此我们的博客系统基本完成,后续如果有时间也会继续实现阅读量和留言板的功能。点此下载完整项目完整项目
用PHP完成简易博客系统相关推荐
- golang入门项目——Gin框架简易博客系统1.0
文章目录 开发前的准备 需求分析 项目截图 代码 开发前的准备 需要集成markdown编辑器 下载地址 需求分析 1.能够实现用户的注册与登录 2.能够编写并保存博客 3.能够对保存的博客进行展示 ...
- 【课程设计】html+php+mysql搭建的简易个人博客系统
1.介绍: 记录项目:实现个人博客的用户查看博客和发表博客,管理员修改博客,添加博客,删除博客,具有注册登录权限的个人简易博客,基于bootstrap+php搭建,比较简单没什么框架,数据系统为mys ...
- Django搭建简易博客
Django简易博客,主要实现了以下功能 连接数据库 创建超级用户与后台管理 利用django-admin-bootstrap美化界面 template,view与动态URL 多说评论功能 Markd ...
- java-net-php-python-4java个人博客系统计算机毕业设计程序
java-net-php-python-4java个人博客系统计算机毕业设计程序 java-net-php-python-4java个人博客系统计算机毕业设计程序 本源码技术栈: 项目架构:B/S架构 ...
- rails官方指南--建一个简易博客
写这篇博客的原因是国科大高级软件工程(罗老师的课)需要用ruby on rails,在rails入门时,rails官方指南(建一个简易博客)的英文读着吃力所以想一边翻译该指南,一边学习,中间因为有考试 ...
- blogs博客系统项目介绍
blogs博客系统项目介绍 blogs 项目简介 项目展示 项目详述 blogs 一个简易的博客系统 GitHub地址:点击查看项目源码 Gitee地址:点击查看项目源码 项目简介 该项目是我之前学习 ...
- 前端 - 博客系统(页面设计) - JavaEE初阶 - 细节狂魔
文章目录 前言 博客系统 博客列表页 紧急修改一下背景图片,虽然上面那张图很美,但是小了.特别的模糊,我就在替换一下背景图 html 代码部分 通用 css 代码部分 博客列表页专属 css文件 博客 ...
- 全栈开发实战(一)——简易博客社区后端搭建教程(附源码)
全栈开发实战(一)--简易博客社区后端搭建 项目展示视频 项目Github地址 (一)项目准备 在项目开始前,首先确保你已安装好Go语言并配置好Go语言编辑器,同时安装好MySQL或其他数据库,其次, ...
- Ruoyi-Blog 基于若依后台的博客系统
Ruoyi-Blog 基于若依后台的博客系统 发现一个很赞的博客系统开源免费我已经将系统上传到这里(点击下载),下面是作者对系统介绍: 平台简介 此项目使用SpringBoot + Apache Sh ...
最新文章
- 学习和在生产环节使用d语言的三个条件
- 最长递增子序列问题合集
- OpenGL 基于PBR的specular textured 镜面纹理的实例
- 前端学习(1408):多人管理28用户信息展示
- 转(每天淘汰你自己)
- HTML 5中的tips两则
- TypeScript:语句
- thinkphp对数据库操作有哪些内置函数
- 手机移动端日期时间控件lcalenda
- 视频直播系统源码,比较图片
- ssm基于java的线上阅读平台的设计与实现毕业设计源码291023
- ggsci | 让你的配色Nature化
- Kruise Rollout v0.2.0 版本发布:支持 Gateway API、StatefulSet 分批发布等能力
- 红外线体温枪制作方案
- 市场份额正在“迅速衰退”!华为将如何纾困?
- 条码标签软件里如何将图片生成数据库
- 实战 | 计算器/数码管数字识别 基于OpenCV和EasyOCR/PaddleOCR(附源码)
- [转载]高一语文必修一寒假作业二
- iOS 单元测试- 入门学习2
- Linux 解压缩文件到指定目录