综述
需求
这次的需求是:一个U3D应用须要学生登录、学生注冊、学生password改动功能。相关后台须要查看学生列表、学生信息改动、查看管理员列表、管理员信息改动和添加等功能。
综合考虑后后台採用PHP语言、ThinkPHP框架、MySQL数据库。
作者
本文作者:MarsZ
QQ:569491198
交流群:498885177
版本号:第一版
时间:2016年3月29日10:32:18
废话:这个项目是我工作业余接的一个私活。业余时间做的,前后大约花了20小时的样子。尽管本人是搞Unity3D的,可是不论之前搞Flash页游开发。还是如今搞U3D手游开发,还是其它的。PHP都是个不错的后台语言,能实现非常多功能需求。
第一版还没有加上UI美化。发完总结再说。这个总结一方面给有须要的朋友參考,一方面也是自己的一种习惯,做过的东西有必要的话写下来,方便以后自己參考。
系统一览
Unity3dclient
Unity3d前台注冊:
Unity3d前台注冊
Unity3d前台登录:
Unity3d前台登录
Unity3d前台password找回:
Unity3d前台password改动
PHP后台
注意:本版本号为第一版,还没有加上UI美化修饰。
后台登录
后台首页-学生列表
后台首页-学生信息编辑
后台首页-账号管理
后台首页-新建管理员
准备
XAMPP
(Apache+MySQL+PHP+PERL)是一个功能强大的建 XAMPP 软件站集成软件包,安装完成后就不用安装Apache、MySQL及PHP了。
官网
下载地址
http://www.xampps.com/xampp.zip (必备)
教程
安装方法:下载安装包后一键安装模式。傻瓜式,没有须要解释的
ThinkPHP
官网
项目所用版本号
http://www.thinkphp.cn/down/610.html
下载地址
http://www.thinkphp.cn/down/610.html (必备)
高速入门
http://www.kancloud.cn/thinkphp/thinkphp_quickstart (推荐)
全然手冊
http://www.kancloud.cn/manual/thinkphp (參考)
步骤
准备ThinkPHP
下载ThinkPHP并解压到站点文件夹,解压完成后的文件夹结构为xampphtdocsArtStudio:
站点文件夹
改动MySQL设置信息
配置文件位于:xampphtdocsArtStudioApplicationCommonConf的config.php:
MySQL配置改动
检測是否成功
訪问网址http://localhost/ArtStudio/index.php/Admin/Index/index
就可以訪问Admin模块的Index控制器的index方法,看到首页了。
扩展:控制器和模板
原则
模板中提交数据到控制器中相应的方法,有參数就传入參数。
加入控制器方法
打开xampphtdocsArtStudioApplicationAdminController下的IndexController.class.php
添加一个方法:public function login($as_admin_name,$as_admin_password)。
给定2个參数$as_admin_name,$as_admin_password。
控制器方法
加入界面模板
打开xampphtdocsArtStudioApplicationAdminViewIndex下的index.html模板,
创建表单,提交到__URL__/login,相应控制器中的login方法。
传入2个參数。
其它功能依此类推
注意
Thinkphp
比較标签
參考:
http://document.thinkphp.cn/manual_3_2.html#compare
格式:
<eq name="name" value="value">
相等
<else/>
不相等
</eq>
样例:
<eq name="vo:name" value="$a">{$vo.name}</eq>
数据读取
參考:
http://document.thinkphp.cn/manual_3_2.html#read_data
样例:
$User = M("User"); // 实例化User对象
// 获取ID为3的用户的昵称
$nickname = $User->where('id=3')->getField('nickname');
Session
參考:
http://www.kancloud.cn/manual/thinkphp/1872
格式:
session('name','value'); //设置session
ession('name',null); // 删除nam
样例:
session('user.user_id',10); //设置session
session('user.user_id',null); // 删除session
无法载入数据库驱动: ThinkDbDriver
參考:
http://www.thinkphp.cn/topic/29611.html
PHP
PHP全选和删除
參考:
http://blog.163.com/iamphex@yeah/blog/static/853658012011118033893/
PHP处理Checkbox复选框表单提交
參考:
http://blog.csdn.net/sysprogram/article/details/42693295
HTML
HTML框架
參考:
http://www.w3school.com.cn/tiy/t.asp?f=html_frame_navigation2
http://www.w3school.com.cn/tiy/t.asp?f=html_frame_mix
HTML框架怎样进行同框架页面跳转(转)
參考:
MySQL
MySQL创建数据库
參考:
http://outofmemory.cn/code-snippet/2533/mysql-create-database-specify-utf-8-coding
样例:
CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
USE DATABASEName;//注意数据库名字不要加引號