一、源码简介

一套纯手写原生的PHP网站管理后台,前端利用LayUI实现,实现PHP初学者专研学习使用,对于PHP学习的人,只有熟悉了原生的PHP开发,才适合利用其它框架搭建自己的网站平台。封城期间,百无聊赖,于是利用PHP8手写了一套原生的管理系统,以供新手学习参考使用。同时,利用nodejs也写了一套,两套共用一个数据库。功能和操作界面基本一样。

本系统最大的难点一是安全策略,另一个就是递归分类的算法,要实现的功能有很多,有的是列出出树形结构,有时候需要根据子ID查询父级,有时候,需要父ID查询所有子级,还有根据子级查询兄弟级等很多算法,研究了很久。大概经历了两月左右,其间还有其它事情要做,陆陆续续将所有的问题一一解决,最后,终于出了第一版。还有第二版,第三版,不断在改进中。另外,还写了一个NODEJS版本。方便不同的用户需要。

后台登录界面

二、部分代码演示

这是简单的登录管理后台界面,登录后,登录代码很简单,即可进入管理首页。

session_start();

include("../inc/sql.php");

//登录页专用防SQL注册函数

function str_check( $value ) {

if(!get_magic_quotes_gpc()) {

// 进行过滤

$value = addslashes($value);

}

$value = str_replace("'", "\'", $value);

$value = str_replace("-", "——", $value);

$value = str_replace("%", "\%", $value);

return $value;

}

if (isset($_GET['action']) && $_GET['action'] == 'logout' ) {

setcookie('id','',time()-3600);

setcookie('account','',time()-3600);

session_destroy();

header('location:login.php');

}

if(trim($_COOKIE['id']) and trim($_SESSION['account'])) {

echo '';

return false;

}

if(!empty($_POST)){

if ($_POST['vcode'] !== $_SESSION["vcode"]) {

echo '';

return false;

}

if(empty($_POST['account'])){

echo '';

return false;

}

if(empty($_POST['password'])){

echo '';

return false;

}

$stmt = $pdo->prepare('SELECT * From admin WHERE `account`="'.str_check($_POST['account']).'"');

$stmt->execute();

$admin = $stmt->fetchAll();

if(empty($admin)){

echo '';

return false;

}

$find = $admin[0];

/*--------------------*/

/*--------------------*/

if($find['password'] != md5($_POST['password'])){

echo '';

return false;

}

setcookie('id',$find['id']);

setcookie('account',$find['account']);

$_SESSION['account'] = $find['account'];

echo '';

return false;

}

三、运行截图

​​​​​​​

 登录后主页 

文章列表管理界面 

 

分类列表管理界面 

分类添加界面 

 

新闻发布界面 

产品发布界面 

友情链接列表管理 

前端读产端读取数据展示 

先从数据库中获取到数据,构建树型分组,然后,构建导航,再利用JQ实现多级的显示。

function getTreeMenu($data , $pId =0) {

$tree = [];

foreach ( $data as $k => $v ) {

if ( $v['pid'] == $pId ){

//父亲找到儿子

$v['children'] = getTreeMenu ( $data , $v['id']);

$tree[] = $v ;

//unset($data[$k]);

}

}

return $tree ;

}

//$tree = getTree( $data , 0);

//构建导航,需要这套系统的朋友可以寇寇 190151304

function buildMenu($menuArray) {

foreach ($menuArray as $node) {

if(empty($node['links'])) {

$links = 'list.php?id='.$node['id'];

}else{

$links = $node['links'];

}

if ($node['isblank'] == '1') {

$blank = ' target="_blank"';

}

echo '

  • ' . $node['name'] . '';

    if (!empty($node['children'])) {

    echo '

      ';

      buildMenu($node['children']);

      echo '

    ';

    }

    echo '

  • ';

    }

    }

     对于大神来说,这些技术都是弱鸡,但是对于初学者来说,很难的。每一步的实现都是经过耗费了无数脑细胞才能完成的。

    经过两个多月的努力,第一版终于完成了,而且还给很多客户应用了很多次,没有任何错误。只是在实践中,发现很多不完美的地方,于是又更新为第二版。后来,又参考很多CMS的做法,现在已经正在完善第三版。

    初学者有一套参考的完整的代码,是一件非常幸运的事情,可以省去很多查找资料的麻烦。代码拿来就用,或者直接在原基础上完善修改,完全可以实现一套全新的自己开发的独立系统。

    需要获取源码的朋友请关注VX公众号:比特网络服务

    推荐文章

    评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。