私房库视频学习笔记-小清新BBS系统开发技术归纳

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

自己一直在学习PHP开发,前一段时间在51cto上看到私房库孙胜利老师的视频,下载了他的小清新BBS系统开发视频学习。现在把里面的好的运用收集到这儿。

在看了这套视频后先了解整个web项目开发的过程。

公共配置参数:

    <?php 
date_default_timezone_set('Asia/Shanghai');//设置时区
session_start();
header('Content-type:text/html;charset=utf-8');
if(version_compare(PHP_VERSION,'5.4.0')<0){
    exit('您的PHP版本为'.PHP_VERSION.',我们的程序要求是PHP版本不低于5.4.0!');
}
define('DB_HOST','localhost');
define('DB_USER','root');
define('DB_PASSWORD','2015');
define('DB_DATABASE','sfkbbs');
define('DB_PORT',3306);
//我们的项目(程序),在服务器上的绝对路径
define('SA_PATH',dirname(dirname(__FILE__)));
//我们的项目在web根目录下面的位置(哪个目录里面)
define('SUB_URL',str_replace($_SERVER['DOCUMENT_ROOT'],'',str_replace('\\','/',SA_PATH)).'/');
if(!file_exists(SA_PATH.'/inc/install.lock')){
    header('Location:'.SUB_URL.'install.php');
}
?>

mysqli操作数据库的公用库:

 <?php 
//数据库连接
function connect($host=DB_HOST,$user=DB_USER,$password=DB_PASSWORD,$database=DB_DATABASE,$port=DB_PORT){
    $link=@mysqli_connect($host, $user, $password, $database, $port);
    if(mysqli_connect_errno()){
        exit(mysqli_connect_error());
    }
    mysqli_set_charset($link,'utf8');
    return $link;
}
//执行一条SQL语句,返回结果集对象或者返回布尔值
function execute($link,$query){
    $result=mysqli_query($link,$query);
    if(mysqli_errno($link)){
        exit(mysqli_error($link));
    }
    return $result;
}
//执行一条SQL语句,只会返回布尔值
function execute_bool($link,$query){
    $bool=mysqli_real_query($link,$query);
    if(mysqli_errno($link)){
        exit(mysqli_error($link));
    }
    return $bool;
}
//一次性执行多条SQL语句
/*
 一次性执行多条SQL语句
$link:连接
$arr_sqls:数组形式的多条sql语句
$error:传入一个变量,里面会存储语句执行的错误信息
使用案例:
$arr_sqls=array(
    'select * from sfk_father_module',
    'select * from sfk_father_module',
    'select * from sfk_father_module',
    'select * from sfk_father_module'
);
var_dump(execute_multi($link, $arr_sqls,$error));
echo $error;
*/
function execute_multi($link,$arr_sqls,&$error){
    $sqls=implode(';',$arr_sqls).';';
    if(mysqli_multi_query($link,$sqls)){
        $data=array();
        $i=0;//计数
        do {
            if($result=mysqli_store_result($link)){
                $data[$i]=mysqli_fetch_all($result);
                mysqli_free_result($result);
            }else{
                $data[$i]=null;
            }
            $i++;
            if(!mysqli_more_results($link)) break;
        }while (mysqli_next_result($link));
        if($i==count($arr_sqls)){
            return $data;
        }else{
            $error="sql语句执行失败:<br />&nbsp;数组下标为{$i}的语句:{$arr_sqls[$i]}执行错误<br />&nbsp;错误原因:".mysqli_error($link);
            return false;
        }
    }else{
        $error='执行失败!请检查首条语句是否正确!<br />可能的错误原因:'.mysqli_error($link);
        return false;
    }
}
//获取记录数
function num($link,$sql_count){
    $result=execute($link,$sql_count);
    $count=mysqli_fetch_row($result);
    return $count[0];
}
//数据入库之前进行转义,确保,数据能够顺利的入库
function escape($link,$data){
    if(is_string($data)){
        return mysqli_real_escape_string($link,$data);
    }
    if(is_array($data)){
        foreach ($data as $key=>$val){
            $data[$key]=escape($link,$val);
        }
    }
    return $data;
    //mysqli_real_escape_string($link,$data);
}


//关闭与数据库的连接
function close($link){
    mysqli_close($link);
}
?>

本文转自孤舟夜航之家博客51CTO博客,原文链接http://blog.51cto.com/cysky/1704657如需转载请自行联系原作者


cysky

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4月前
|
前端开发 JavaScript 开发工具
前端知识笔记(三十)———前端需要掌握的技术有哪些方面
前端知识笔记(三十)———前端需要掌握的技术有哪些方面
30 1
|
6月前
|
NoSQL 前端开发 数据库
架构内容 节选自《闻缺陷则喜》(此书可免费下载)
架构内容 节选自《闻缺陷则喜》(此书可免费下载)
|
10月前
|
监控 前端开发 关系型数据库
自习室管理系统的设计与实现(论文+源码)_kaic
近年来,随着高校规模的逐步扩大,学生对高校自习室座位的需求也在不断增加。然而,一些高校仍然采用人工管理学院自习室座位,这大大降低了管理效率。显然,开发一个成本低、占用资源少、能提高高校自习室座位管理效率的自习室管理系统是非常必要的。 本次毕业设计采用Java作为主要开发语言,Eclipse作为开发平台,MYSQL作为后台数据库。学生可以在网上预订每个自习室的座位,也可以更换自己选择的座位。管理员进入四川工业科技学院自习室后,可以对学院自习室、座位、学生信息、学生相关情况进行管理。系统通过对四川工业科技学院自习室、座位和学生的统一管理,提高了学院自习室、座位的管理效率,督促学生遵守学院自习室的
|
12月前
|
设计模式 存储 移动开发
《微信小游戏开发》自学讲义整体目录
主要给购买《微信小游戏开发》套装实体书的读者,提供一套自学讲义。依靠这套讲义,读者可以自行安排训练,每天完成一个或多个学习步骤,最快不到三月即可完成所有学习。
130 0
|
消息中间件 缓存 搜索推荐
互联网后端技术栈一览,写得太好了。。(1)
互联网后端技术栈一览,写得太好了。。(1)
1056 0
互联网后端技术栈一览,写得太好了。。(1)
|
SQL 分布式计算 监控
互联网后端技术栈一览,写得太好了。。(3)
互联网后端技术栈一览,写得太好了。。(3)
418 0
互联网后端技术栈一览,写得太好了。。(3)
|
存储 监控 Dubbo
互联网后端技术栈一览,写得太好了。。(2)
互联网后端技术栈一览,写得太好了。。(2)
417 0
互联网后端技术栈一览,写得太好了。。(2)
|
SQL 开发框架 小程序
小程序开发-第二章第三节小程序豆瓣评分主页-全栈工程师之路-中级篇
小程序开发-第二章第三节小程序豆瓣评分主页-全栈工程师之路-中级篇
88 0
小程序开发-第二章第三节小程序豆瓣评分主页-全栈工程师之路-中级篇
|
SQL 开发框架 小程序
小程序开发-第二章第二节小程序电影卡片模板-全栈工程师之路-中级篇
小程序开发-第二章第二节小程序电影卡片模板-全栈工程师之路-中级篇
84 0
小程序开发-第二章第二节小程序电影卡片模板-全栈工程师之路-中级篇
|
数据可视化 搜索推荐 大数据
如何在 FlowUs、Notion 等笔记软件中使用矩阵分析法建立你的思维脚手架
在日常的工作和生活中,强大的分析能力成为专业人士的基本特征。那么,如何拥有强大的分析能力呢? 对此,答案很多。比如,丰富的知识储备、强大的逻辑思维能力、拥有批判性思维能力。这些因素对于成为专业人士非常重要,然而却不是一朝一夕才能拥有。对于普通人而言,学习像专业人士那样使用一些分析工具,或许会事半功倍。因此,接下来我将会介绍一些实用的思维模式。今天我先介绍矩阵分析法。
228 0
如何在 FlowUs、Notion 等笔记软件中使用矩阵分析法建立你的思维脚手架