我的编程空间,编程开发者的网络收藏夹
学习永远不晚

基于PHP怎么实现个人博客网站

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

基于PHP怎么实现个人博客网站

这篇“基于PHP怎么实现个人博客网站”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“基于PHP怎么实现个人博客网站”文章吧。

一、运行展示

基于PHP怎么实现个人博客网站

二、功能说明

未登录用户:

仅可以浏览所有博客的内容。

已登录用户:

  • 浏览所有博客的内容;

  • 发表博客;

  • 删除自己的博客;

  • 修改自己的博客;

  • 在任一博客下评论;

  • 修改昵称和密码。

管理员:

  • 可以执行普通用户的所有功能;

  • 修改任一博客的内容;

  • 删除任一博客;

  • 删除任一用户。

网站平台功能补充说明:

  • 动态显示博客信息(如当前所有博客数量,用户个人博客数量,以及博客内容信息);

  • 博客和评论发表的时间遵循北京时间;

  • 登录时只要输入账号密码即可,后台会自动判断该账号为普通用户还是管理员,进而推送到对应的网页。

三、核心代码讲解

1、创建数据库

drop database  if  exists grblog;CREATE DATABASE `grblog` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;USE grblog;-- 人员信息CREATE TABLE admin(    adminMail varchar(25) primary key,    adminName varchar(10) not null,    passWord varchar(15) not null,    level enum('user', 'super'));-- 博客信息CREATE TABLE blog(    blogNo int primary key AUTO_INCREMENT,    blogTopic varchar(50) not null,    blogContent varchar(5000) not null,    adminMail varchar(25) not null,    importDate date not null ,    foreign key (adminMail) references admin(adminMail));-- 评论信息CREATE TABLE comment(    commentNo int primary key AUTO_INCREMENT,    commentContent varchar(500) not null,    adminMail varchar(25) not null,    blogNo int,    commentDate datetime not null ,    foreign key (adminMail) references admin(adminMail),    foreign key (blogNo) references blog(blogNo));

2、初始化数据

INSERT INTO `admin` (`adminMail`,`adminName`, `passWord`, `level`) VALUES ('2015100@126.com', '不脱发的程序猿', 'pwdpwd', 'user'),('2015333@163.com', '涛歌依旧', 'pwdpwd', 'user'),('2015222@qq.com', 'ThinkWon', 'pwdpwd', 'user'),('2015111@qq.com', 'SAP剑客', 'pwdpwd', 'user'),('2015201@126.com', '敖 丙', 'pwdpwd', 'user'),('2015202@126.com', '>=FreeMan=<', 'pwdpwd', 'user'),('2015203@126.com', '布客飞龙', 'pwdpwd', 'user'),('2015101@126.com', 'Riveore', 'pwdpwd', 'user'),('2015102@1256.com', '打杂人', 'pwdpwd', 'user'),('super@126.com', '超级管理员', 'superpwd', 'super');INSERT INTO `blog` (`blogNo`,`blogTopic`, `blogContent`, `adminMail`, `importDate`) VALUES (1, 'Python开发人员常犯的几个重大错误', 'Python 无疑是当今使用最广泛的编程语言,特别是进入人工智能时代,已经成为人工智能开发的主要语言,甚至小学三年级就已经教学该语言。它之所以如此流行,很大程度上是由于简单的语法和老少皆宜的可读性,这使得它非常容易使用。初学者之所以喜欢 Python,是因为它给人一种感觉就像是用英语写一段伪代码一样。但是,无论你有多么丰富的经验,也无论你已经研究过多少种语言,切换到 Python 并不能保证你能做到平稳过渡。具有面向对象编程背景的开发人员很容易忽略 Python 的常用特性,或者说python范式编程。这样一来,他们很可能会误用编程结构,从而可能出现难以发现的、不可预见的错误。更糟糕的是,这些错误大多很难发现,并且可能会给项目工程带来天大的麻烦,轻则删库跑路,重则抱恨终身。在本文中,将列出程序员(通常是菜鸟)可能会犯的常见错误。此外,我还将介绍如何避免这些错误,以便编写出更好的、无错误的 Python 代码。', '2015100@126.com','2020-12-1'),(2, '组合优化问题', '其实组合优化问题我想大家肯定是遇到过的,因为可能现在在看这篇博客的同学都学过了算法程序设计或者数据结构等的课程。那么你们肯定见过所谓的0-1背包问题,这个问题就是很典型的组合优化问题。当然啦还有旅行商问题等也属于组合优化问题。很多离散组合优化问题都是从运筹学(Operations Research,OR)中演化出来的。组合优化其所研究的问题涉及到信息技术、经济管理、工业工程、交通运输、通信网络等众多领域,在科学研究和生产实践中都起着重要的作用。我们不难发现,其实这些问题解决的方法其实很简单,比方说0-1背包,那无非就是n个物品,每个物品要么带要么不带,即为2^n的情况,得到所有情况然后取出价值最大的那种方法就可以了。是呀,这样子的话真的是老简单了。哈哈,开个玩笑。只要是稍微多想一想都能发现我们上述的穷举法有一个很致命的问题,就是当你的n值过大时,对应的计算量可是呈指数暴增的。所以这个时候,就需要我们借助智能优化计算方法,可以在合理的时间内求解得到令人满意的解,从而满足实践的需要。对于算法的计算复杂性,我们一般很容易进行判断,例如使用蛮力法去枚举旅行商问题或者0-1背包问题的算法,就是具有指数计算复杂性的算法。', '2015101@126.com','2020-12-1'),(3, 'PHP简介', 'PHP最初是一个小型的开源项目,随着越来越多的人发现它很有用,它发展了起来。Rasmus Lerdorf在1994年发布了PHP的第一个版本。PHP是“PHP:超文本预处理器(PHP: Hypertext Preprocessor)”的递归首字母缩略词。PHP是嵌入在HTML中的服务器端脚本语言。它用于管理动态内容,数据库,会话跟踪,甚至建立整个电子商务网站。它与许多流行的数据库集成,包括MySQL,PostgreSQL,Oracle,Sybase,Informix和Microsoft SQL Server。PHP在其执行过程中令人愉快,特别是在Unix端编译为Apache模块时更是如此。MySQL服务器一旦启动,就会在记录设置时间内执行非常复杂的查询,并带有巨大的结果集。PHP支持大量主要协议,如POP3,IMAP和LDAP。PHP4增加了对Java和分布式对象体系结构(COM和CORBA)的支持,使n层开发成为第一次。PHP是宽容的:PHP语言试图尽可能宽容。PHP语法是类C的。', '2015101@126.com','2020-12-1'),(4, 'MySQL 教程', 'MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。在此次教程中,会让大家快速掌握 MySQL 的基本知识,并轻松使用 MySQL 数据库。数据库(Database)是按照数据结构来组织、存储和管理数据的仓库。每个数据库都有一个或多个不同的 API 用于创建,访问,管理,搜索和复制所保存的数据。我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。RDBMS 即关系数据库管理系统(Relational Database Management System)的特点:1.数据以表格的形式出现;2.每行为各种记录名称;3.每列为记录名称所对应的数据域;4.许多的行和列组成一张表单;5.若干的表单组成database', '2015222@qq.com','2020-12-1'),(5, 'web前端知识体系梳理', '现在是信息时代,经过 web1.0 时期、web2.0 时期到现在的移动互联网时期,信息获取越来越高效,坐着不动就会有大量的新闻、博客、资讯向你推荐而来。作为一名靠谱的程序员,你免不了要查阅大量的文章、视频和书籍来充斥你的知识量,不断学习。但是现在网上大量的信息堆积起来,对于你来说意味着什么?你如何去合理的筛选、梳理这些获得的信息,又如何去知道自己现在还缺什么信息?到这里就应该提出本文的主题 —— 知识体系 。其实无论针对哪个知识领域,它都是有一套完整的、成型的知识体系和标准作为支撑的,例如数学、建筑、医学、机械等等,当然包括计算机编程,其中肯定包括前端开发。有了完善的知识体系,再来面对大量的信息获取,你就知道每个信息所说的知识点是属于知识体系中的哪个部分。同时,你也会很清楚自己哪些部分掌握的好,哪些部分掌握的不好,甚至哪些部分自己压根都没听说过。现在不一样了,网速越来越快、浏览器和 JS 引擎足够强大,而且 vue React 等框架流行开来,使得前端 JS 的业务逻辑越来越大,这些基础知识必须掌握。最后别忘了,nodejs 都盛行多年了,这可让 JS 运行到 server 了,和 php java 等干一样的事情。最后补充一句。其实编程基础也不止这几个,像编码、编译原理、计算机组成、网络等这些都是基础,但是并不会和前端开发直接相关(或者和我们日常开发相关性不大),这里就不再深究了。有兴趣的读者,可以自己继续补充。', '2015101@126.com','2020-12-1'),(6, '后台开发知识点', '多线程和多进程区别:1.进程之间数据分开,进程间通信需要特殊的ipc机制(管道,信号量,共享内存,消息队列),线程存在于进程内,线程之间共享进程的堆区间,全局静态存储区,而各自拥有自己独立的栈空间,同步数据用互斥量;2.进程的创建,销毁,切换复杂,速度慢,线程是轻量级进程。;3.进程占用内存多,cpu利用率低。线程占用内存少,CPU利用率高。;4.进程之间不会互相影响,进程的一个线程挂掉则会导致整个进程挂掉。线程私有内容:线程id,寄存器值,栈内存,线程的调度策略,线程的私有数据,errno变量', '2015201@126.com','2020-12-1'),(7, 'web后台开发需要学习哪些知识', 'web后台开发需要学习的知识有HTML、CSS、JavaScript、DOM、Web服务器、服务器脚本语言、数据库及SQL语言以及baiweb框架。web后台开发学习步骤:1、学习HTML和CSS。HTML(超文本标记语言)是网页的核心,学好HTML是成为Web开发人员的基本条件。学习CSS了,它可以帮你把网页做得更美观。利用HTML和CSS模拟一些你所见过的网站的排版和布局(色彩,图片,文字样式等等)。2、学习javascript,了解DOM。JavaScript是一种能让你的网页更加生动活泼的程序语言。学习JavaScript的基本语法,学会用javascript操作网页中dom元素。接着学习使用一些javascript库,比如jquery是大部分WEB开发人员都喜欢用的,通过Jquery可以有效的提高JavaScript的开发效率。3、了解Web服务器。学习一点Unix和Linux的基本知识,因为大部分Web服务器都运行在Unix和Linux平台上。4、学好一门服务器端脚本语言。目前流行的服务器脚本语言有:php、asp.net、jsp、ruby、python等。可以选一个自己喜欢的进行学习。5、学习数据库及SQL语法。要构建动态页面通常会使用到数据库,常用的数据库有SQLServer、Oracle、MySQL 等,它们都会遵循标准的SQL原则。通常asp.net 程序使用SqlServer数据库,PHP、java使用Oracle、MySQL数据库。6、学习使用Web框架。当你掌握了HTML,CSS,JavaScript和服务器端脚本语言后,就应该找一个Web框架加快你的Web开发速度,使用框架可以节约你很多时间。', '2015203@126.com','2020-12-14'),(8, '详细后端开发知识讲解', '本片文章面向后端开发,讲述后端在进行开发时所使用的WEB服务器的工作流程,正所谓知根知底,WEB服务器是后端开发人员日常用于调试WEB程序和与前端通讯的一种方式!WEB服务器最为强大的地方是能够执行WEB程序,其WEB程序的编程语言并没有明确的规定,因为只要你所使用的服务器支持这样的程序就可以了!WEB服务器更像是一个平台,在此平台上编写软件我们称其为WEB编程,注:WEB编程下有许多规范比如CGI,FastCGI等等,这个是要看服务器的支持范围!不同服务器所使用的规范不同,比如JSP服务器只能运行由JAVA EE编写的WEB程序,不能用于运行像C/C++、Python等编程语言编写而成的WEB程序!通常情况下的WEB服务器所使用的编程规范均为CGI编程、只能运行CGI规范的程序,除了一些例外的WEB服务器,比如JSP服务器!CGI是Common Gateway Interface的缩写,其意义为公用网关接口,意思可以理解为:在WEB服务器上运行一个程序或脚本,并且WEB服务器要将脚本执行结果返回给浏览器(客户端)!规范的意思是,无论你使用任何语言编写,都必须使用输出函数(cout,printf,print)输出HTML格式的数据信息,WEB服务器根据这些信息传递给浏览器,浏览器HTML树并将其显示到浏览器当中,即为一个WEB页面!更加深层次的来说其实,无论你使用什么语言编写,只要在WEB服务器中的配置文件中,使其支持CGI编程,然后将你编译完成的二进制可执行文件后缀名改为.cgi,最后前端页面在使用get或post方法请求这个WEB程序,WEB服务器会自动执行这程序并将其结果送回给浏览器(TCP/IP协议)!', '2015202@126.com','2020-12-15');INSERT INTO `comment` (`commentNo`,`commentContent`, `adminMail`, `blogNo`, `commentDate`) VALUES (1, '写得真好,棒!', '2015201@126.com', 1, '2020-12-12 12:20:20'), (2, '写得不错,可以一起交流学习。', '2015202@126.com', 2, '2020-12-12 12:21:20'), (3, '不错不错,解决了我的疑惑。', '2015102@126.com', 2, '2020-12-12 12:22:20'), (4, '文章写得很好,棒!', '2015201@126.com', 3, '2020-12-12 12:20:20'), (5, '文笔不错。', '2015102@126.com', 3, '2020-12-12 12:22:22'), (6, '可以可以,终于解决我的困惑了,感谢!', '201100@126.com', 4, '2020-12-12 12:20:20'), (7, '终于解决我的困惑了,感谢!', '2015100@126.com', 5, '2020-12-12 12:22:20'), (8, '解决我的困惑了,感谢!', '2015100@126.com', 1, '2020-12-12 12:21:21'), (9, '解决我的困惑了,感谢!', '2015100@126.com', 6, '2020-12-12 12:20:20'), (10, '解决我的困惑了,感谢!', '2015222@qq.com', 6, '2020-12-12 12:20:20'), (11, '解决我的困惑了,感谢!', '2015111@qq.com', 3, '2020-12-12 12:21:21'), (12, '超级管理员给你点赞!', 'super@126.com', 1, '2020-12-12 12:21:21'), (13, '解决我的困惑了,感谢!', '2015111@qq.com', 7, '2020-12-16 12:21:21'), (14, '超级管理员给你点赞!', 'super@126.com', 7, '2020-12-16 12:21:21'), (15, '超级管理员给你点赞!', 'super@126.com', 8, '2020-12-12 12:21:21'), (16, '解决我的困惑了,感谢!', '2015111@qq.com', 8, '2020-12-16 12:21:21'), (17, '写得真好,棒!', '2015201@126.com', 8, '2020-12-12 12:20:20');

3、登录验证

当用户在登录页面输入账号和密码后点击登录时,会跳转到下面的页面进行验证,其中用到session进行存储账号和密码。

首先是判断账号密码是否为空,接着是判断账号是否存在,密码是否对应,若对应再判断输入的用户是普通用户还是管理员。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?php$admin = $_REQUEST['adminmail'];$password = $_REQUEST['password'];if ($admin == "" || $password == "") {    echo '<script type="text/javascript">alert("用户名密码不能为空");location="signin.php";</script>';    exit;}require_once "config.inc.php";$demand = "select passWord,level,adminName from Admin where adminMail = '$admin'";$res = mysqli_query($mysqli, $demand);$power = mysqli_fetch_row($res);$_SESSION["adminMail"]=$admin;$_SESSION["passWord"]=$password;$_SESSION["level"]=$power[1];if ($power[0] == $password) {    if ($power[1] == 'user') {        $_SESSION["adminName"]=$power[2];        header('location:user_index.php');    } else if ($power[1] == 'super') {        $_SESSION["adminName"]=$power[2];        header('location:super_index.php');    } else {        echo '<script type="text/javascript">alert("未知错误,请联系管理员");location="signin.php";</script>';        exit;    }} else {    echo '<script type="text/javascript">alert("用户名或密码错误,请重新登陆");location="signin.php";</script>';}mysqli_free_result($res);mysqli_close($mysqli);

其中的require_once "config.inc.php";用于连接数据库,代码实现如下:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/><?php $server="localhost";  //mysql服务器地址 $user="root";         //登陆mysql的用户名 $pass="";   //登陆mysql的密码 $db_name="grblog";   //mysql中要操作的数据库名$mysqli=mysqli_connect($server,$user,$pass, $db_name);  mysqli_query($mysqli,"SET NAMES 'utf8'");?>

4、用户注册

首先判断账号密码是否为空,接着判断注册账号是否已经存在。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?php$admin = $_REQUEST['adminmail'];$adminName = $_REQUEST['adminName'];$password = $_REQUEST['password'];$level = 'user';if ($admin == "" || $password == "") {    echo '<script type="text/javascript">alert("用户名或密码不能为空");location="signup.php";</script>';    exit;}require_once "config.inc.php";if (mysqli_connect_errno()) {    die("Failed to connect to MySQL: (" . mysqli_connect_errno() . ") " . mysqli_connect_error());}$demand1 = "INSERT INTO admin values('$admin','$adminName','$password','$level')";$res1 = mysqli_query($mysqli, $demand1);if ($res1){    $_SESSION['adminName'] = '';    echo '<script type="text/javascript">alert("注册成功!");location="signin.php";</script>';}else{    echo '<script type="text/javascript">alert("该邮箱已注册!");location="signup.php";</script>';}mysqli_free_result($res);mysqli_free_result($res1);mysqli_close($mysqli);

5、发表博客

首先判断用户是否已经登录,其次判断输入的数据是否满足格式需求(是否为空)

<?phpsession_start();?>    <meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    $blogTopic = $_REQUEST['blogTopic']; //博客主题    $adminMail = $_SESSION["adminMail"];    $blogContent = $_REQUEST["blogcontent"];    date_default_timezone_set('Asia/Shanghai');//设置为北京时间    $blogDate = date("Y-m-d");//自动获取时间(年月日)    require_once "config.inc.php";//插入BLOG信息命令    $demand = "INSERT INTO `blog` (`blogTopic`, `blogContent`, `adminMail`, `importDate`) values('$blogTopic','$blogContent','$adminMail','$blogDate')";    $res = mysqli_query($mysqli, $demand);    if ($res) { //跳转页面        mysqli_close($mysqli); //查询已经结束,在这里关闭连接        echo '<script>alert("博客发表成功");location="super_myblogs.php";</script>';    } else {        mysqli_close($mysqli);        echo '<script>alert("博客发表失败");location="super_insert_blog.php";</script>';    }}else{    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

6、更新博客

这里是以普通用户为例,首先判断是否已经登录 ,接着判断是否具有更改博客的权限(非自己博客不能更改),最后判断输入的数据是否满足格式需求(是否为空)

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    $blogTopic = $_REQUEST['blogTopic']; //博客主题    $adminMail = $_SESSION["adminMail"];    $blogContent = $_REQUEST["blogcontent"];    $blogno = $_SESSION['no_blog'];    require_once "config.inc.php";    $demand = "select adminMail from blog where blogNo = '$blogno'";    $res = mysqli_query($mysqli, $demand);    $power = mysqli_fetch_row($res);    $mail = $power[0];    if ($mail == $adminMail){        //插入BLOG信息命令        $demand2 = "UPDATE `blog` SET `blogTopic` = '$blogTopic',`blogContent` = '$blogContent' WHERE `blog`.`blogNo` ='$blogno'";        $res2 = mysqli_query($mysqli, $demand2);        if ($res2) { //跳转页面            mysqli_close($mysqli); //查询已经结束,在这里关闭连接            echo '<script>alert("博客修改成功");location="user_index.php";</script>';        } else {            mysqli_close($mysqli);            echo '<script>alert("博客修改失败");location="user_update_blog.php";</script>';        }    }else{        echo '<script>alert("无权限!");location="user_index.php";</script>';    }} else {    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

7、删除博客

这里普通用户和管理员的代码时基本一样的,首先判断是否登录,接着判断是否为普通用户,若是,则判断要删除的博客是否为自己的博客,若为管理员,则无需判断是否为自己的博客。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    require_once "config.inc.php";    $level = $_SESSION["level"];    $mail_blog = $_SESSION['mail_blog'];    $adminMail = $_SESSION["adminMail"];    $no_blog = $_SESSION['no_blog'];    if ($level == 'user') {        if ($adminMail != $mail_blog) {            echo '<script>alert("无权限!");location="user_index.php";</script>';        } else {            $demand = "delete from blog where blogNo = '$no_blog'";            $res = mysqli_query($mysqli, $demand);            if ($res) { //跳转页面                mysqli_close($mysqli);                echo '<script>alert("删除博客成功");location="user_index.php";</script>';            } else {                mysqli_close($mysqli);                echo '<script>alert("删除博客失败");location="user_index.php";</script>';            }        }    } else {        $demand = "delete from blog where blogNo = '$no_blog'";        $res = mysqli_query($mysqli, $demand);        if ($res) { //跳转页面            mysqli_close($mysqli);            echo '<script>alert("删除博客成功");location="super_index.php";</script>';        } else {            mysqli_close($mysqli);            echo '<script>alert("删除博客失败");location="super_index.php";</script>';        }    }} else {    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

8、发表评论

注意评论不能为空。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != ""){    require_once "config.inc.php";    $email = $_SESSION['adminMail'];//用户名    $blogNo = $_SESSION['no_blog'];//博客号    $new_comment =$_REQUEST['new_comment'];//新评论    date_default_timezone_set('Asia/Shanghai');//设置为北京时间    $commentDate=date('Y-m-d H:i:s');//自动获取时间(年月日时间)    $demand = "INSERT INTO `comment` (`commentContent`, `adminMail`, `blogNo`, `commentDate`) values('$new_comment','$email',$blogNo,'$commentDate')";    $insertComment = mysqli_query($mysqli,$demand);    if ($insertComment){        echo '<script>alert("发表成功");location="user_index.php";</script>';    }    else{        echo '<script>alert("输入错误!");location="user_index.php";</script>';    }}else{    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

9、修改密码

首先判断是否已经登录,接着判断新密码和第二次输入的新密码是否一致,再判断原密码是否正确。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    require_once "config.inc.php";    $email = $_SESSION['adminMail'];//用户名    $real_pwd = $_SESSION['passWord'];//真实密码    $past_pwd = $_REQUEST['past_pwd'];//原密码    $new_pwd = $_REQUEST['new_pwd'];//新密码    $pwd = $_REQUEST['new_pwd_2'];//第二次新密码    if ($new_pwd == $pwd) {        if ($real_pwd == $past_pwd) {            $sql = "update admin set password = '$pwd' where adminMail='$email'";            $updatepwd = mysqli_query($mysqli, $sql);            if ($updatepwd) {                echo '<script>alert("密码修改成功,请重新登录");location="signin.php";</script>';            } else {                echo '<script>alert("未知错误!");location="user_update_pwd.php";</script>';            }        } else {            echo '<script>alert("原密码输入错误!");location="user_update_pwd.php";</script>';        }    } else {        echo '<script>alert("两次密码输入不相同!");location="user_update_pwd.php";</script>';    }} else {    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

10、修改昵称

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    require_once "config.inc.php";    $email = $_SESSION['adminMail'];//用户名    $new_name = $_REQUEST['new_name'];//新昵称    $sql = "update admin set adminName = '$new_name' where adminMail='$email'";    $updatename = mysqli_query($mysqli, $sql);    if ($updatename) {        $_SESSION["adminName"] = $new_name;        echo '<script>alert("昵称修改成功");location="user_index.php";</script>';    } else {        echo '<script>alert("输入错误!");location="user_update_name.php";</script>';    }} else {    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

11、管理员删除用户

需要注意的是,删除用户的同时会删除有关他的所有信息,包括他发表的博客和评论。

<?phpsession_start();?><meta name="viewport" charset="utf-8" content="width=device-width, initial-scale=1.0"><?phpif ($_SESSION["adminName"] != "") {    require_once "config.inc.php";    $admai = $_GET['delete_mail'];    $sql = "delete from admin where adminMail='$admai'";    $delete = mysqli_query($mysqli, $sql);    $sql2 = "delete from blog where adminMail='$admai'";    $delete2 = mysqli_query($mysqli, $sql2);    $sql3 = "delete from comment where adminMail='$admai'";    $delete2 = mysqli_query($mysqli, $sql3);    echo '<script>alert("删除成功");location="super_user.php";</script>';} else {    echo '<script>alert("请先登录!");location="signin.php";</script>';}?>

四、运行环境

APMServ 5.2.6 for Windows 2000/XP/2003

五、运行说明

以管理员身份运行APMServ,启动服务器,点击管理MySQL数据库;

将数据库设计源码(.sql文件)中的数据导入数据库当中;

最后点击访问用户本地网站,找到我们解压后的源代码的目录并点击(记得事先将项目文件放到APMServ5.2.6\www\htdocs目录下);

找到signin.php文件并点击即可进入登录页面;

若想体验登录后的功能,可以点击用户中心下的登录并输入账号密码即可。

(如输入普通用户账号:2015100@126.com 密码:pwdpwd;

或者管理员账号:super@126.com 密码:superpwd)

以上就是关于“基于PHP怎么实现个人博客网站”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

基于PHP怎么实现个人博客网站

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

基于PHP怎么实现个人博客网站

这篇“基于PHP怎么实现个人博客网站”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“基于PHP怎么实现个人博客网站”文章吧。一
2023-06-30

基于PHP如何实现个人博客网站

要基于PHP实现个人博客网站,需要进行以下几个步骤:1. 选择合适的开发框架:PHP有很多开发框架可供选择,例如Laravel、CodeIgniter、Symfony等。选择合适的框架可以提高开发效率和安全性。2. 设计数据库结构:根据博客
2023-08-14

php个人博客网站怎么实现

实现一个PHP个人博客网站需要以下步骤:1. 确定网站的需求和功能,比如博客列表、文章阅读、评论、分类、标签、搜索等。2. 设计网站的页面结构和页面布局,包括头部、导航菜单、侧边栏、主体内容、底部等。3. 选择合适的网站模板或自己设计网站样
2023-06-13

基于django的个人博客网站建立(二)

前言今天主要完成后台管理员登录的状态以及关于文章在后台的处理具体内容首先接上一次内容,昨天只是完成了一个登录的跳转,其他信息并没有保存到session中,今天先完善一下在用户登录时,先设置了一下sessionrequest.session[
2023-01-31

基于django的个人博客网站建立(七)

前言这次在原来的基础上添加或修改一些小功能具体内容1.代码高亮在原来的blog-details.html页面添加下面的代码:2023-01-31

基于django的个人博客网站建立(五)

前言之前鸽了两天,今天继续再写点主要内容今天加了个展示照片的功能,就叫他生活记录吧先建表class Record(models.Model): title = models.CharField(max_length=128) c
2023-01-31

基于django的个人博客网站建立(三)

前言今天主要完成的是文章在页面的显示以及评论,留言具体内容首先我希望主页面是显示我的所有文章,于是在主页面的视图函数中返回了所有的文章对象:def index(request): if request.method == 'GET':
2023-01-31

基于django的个人博客网站建立(六)

前言今天主要完成的是项目在腾讯云服务器上ubuntu16.04+django+mysql+uwsig+nginx的部署过程目前可以通过此处点击访问主要内容按照步骤一步一步说1.python环境的安装与pip的安装这里没有采用虚拟环境,是把项
2023-01-31

基于django的个人博客网站建立(四)

前言今天主要添加了留言与评论在后台的管理和主页文章的分页显示,文章类别的具体展示以及之前预留链接的补充主要内容其实今天的内容和前几天的基本相似,就是个体力活首先是评论在后台的管理:@authdef view_comment(request)
2023-01-31

PHP开发:打造自己的个人博客网站

随着互联网的发展,个人博客成为了越来越多人展示自己的平台。无论是分享生活感悟,记录学习笔记,还是展示个人作品,个人博客都成为了一种流行的方式。如果您也想拥有一个属于自己的个人博客网站,那么PHP开发将是一个不错的选择。PHP是一种简单易用、
2023-10-27

PHP如何实现个人博客系统

要实现一个个人博客系统,可以使用PHP来构建。以下是一个简单的步骤:1. 设计数据库结构:首先,设计数据库表来存储博客的相关信息,如博客文章、用户、评论等。可以使用MySQL或其他关系型数据库来存储数据。2. 创建数据库连接:使用PHP连接
2023-08-24

如何使用PHP实现个人博客

要使用PHP实现个人博客,您可以按照以下步骤进行操作:1. 创建数据库:在MySQL中创建一个数据库,用于存储博客相关的数据,如文章、评论等。2. 设计数据库结构:根据博客的需求,设计数据库的表结构,如文章表、用户表、评论表等。3. 创建基
2023-08-24

怎么使用GitHub Pages建立个人网站和博客

GitHub Pages 是github提供的一个免费的静态网站托管服务,可以将Markdown、HTML、CSS、JavaScript或者其他静态文件托管到您的GitHub Pages账户中。 它支持多种自定义域名和主题,可以兼容Jeky
2023-10-22

php个人博客系统怎么搭建

要搭建一个 PHP 个人博客系统,你需要以下步骤:1. 选择一个合适的 PHP 框架,比如 Laravel、CodeIgniter、Yii 等。这些框架可以帮助你快速构建一个完整的网站,包括用户认证、数据库操作、模板引擎等功能。2. 安装一
2023-06-14

使用个人免费空间怎么搭建博客网站

要搭建一个博客网站,您需要遵循以下步骤:1.选择一个网站构建平台:有很多免费的网站构建平台可以选择,例如WordPress、Blogger、Wix等等。2.注册一个账户:注册一个账户,以便能够使用平台上的工具和功能。3.选择一个主题:选择一
2023-06-03

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录