夺命雷公狗ThinkPHP项目之----商城6后台首页

废话步多说,我们开工,

首先我们将thinkphp文件都解压到环境目录下的shop文件夹下

然后将里面多余的东西都干掉,留下public文件夹和thinkphp文件夹,即可,别的东西干掉,

然后我们新建一个名字叫index.php的文件,里面的配置文件可以按以下方法进行自定义:

<?php
    // 定义项目目录
    define("APP_PATH",‘./Shop/‘);
    // 开启调试
    define("APP_DEBUG",true);
    // 引入ThinkPHP入口文件
    require "./ThinkPHP/Thinkphp.php";

我们打开shop目录下发现了Common和Home以及Runtime这三个文件夹

那么我们第一个目标是完成网站后台的首页吧,那么我们就直接将Home的文件夹复制一份出来,并且改名为Admin这样就可以分出前后台目录文件了

下一步是在shopp\shop\Common\Conf\config.php配置文件上设置下后台的配置文件和数据库的链接方式了,而且里面也可以一块开启session到时候不用那么麻烦,一个个的去打开了,如下所示:

<?php
return array(
    //‘配置项‘=>‘配置值‘
    //系统中允许访问的模块(前后台)
    ‘MODULE_ALLOW_LIST‘      =>  array(‘Home‘,‘Admin‘),
    //配置默认进入模块Home
    ‘DEFAULT_MODULE‘         =>     ‘Home‘,//默认模块

        //禁止在模版中使用php代码  默认为false
        //‘TMPL_DENY_PHP‘=>false;

        //数据库配置
        ‘DB_TYPE‘               =>  ‘mysql‘,     // 数据库类型
        ‘DB_HOST‘               =>  ‘localhost‘, // 服务器地址
        ‘DB_NAME‘               =>  ‘shopp‘,          // 数据库名
        ‘DB_USER‘               =>  ‘root‘,      // 用户名
        ‘DB_PWD‘                =>  ‘‘,          // 密码
        ‘DB_PORT‘               =>  ‘3306‘,        // 端口

        /*开启SESSION开关 */
        ‘SESSION_AUTO_START‘    =>  true,    // 是否自动开启Session

);

然后在Admin目录下找到IndexController的控制器,将里面的

namespace Home\Controller;

改成namespace Admin\Controller;

然后用浏览器进行访问下http://localhost/shopp/index.php/admin,看下是否能正常见到笑脸,如果能正常看到,那么恭喜您,您成成功配置成功Thinkphp的环境了

下一步我们就是在Admin---View---目录下创建Index的文件夹,然后将网站模版放进去,

按正常来说,我们访问http://localhost/shopp/index.php/admin应该可以看到一些东西才是对的,但是我打开发现报了一大堆的错,不过没关系,这都是小问题,还没全部加载进来,因为我们框架是由分针技术实现的,而且框架上的路径还没成功引入,那么我们就打开index.html让他们进行引入

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>myshop管理中心</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<frameset rows="51,*" framespacing="0" border="0">
  <frame src="__MODULE__/Index/top" id="header-frame" name="header-frame" frameborder="no" scrolling="no">
  <frameset cols="180, 10, *" framespacing="0" border="0" id="frame-body">
    <frame src="__MODULE__/Index/menu" id="menu-frame" name="menu-frame" frameborder="no" scrolling="yes">
    <frame src="__MODULE__/Index/drag" id="drag-frame" name="drag-frame" frameborder="no" scrolling="no">
    <frame src="__MODULE__/Index/main" id="main-frame" name="main-frame" frameborder="no" scrolling="yes">
  </frameset>
</frameset>
  <frameset rows="0, 0" framespacing="0" border="0">
  <frame src="http://api.ecshop.com/record.php?mod=login&url={$shop_url}" id="hidd-frame" name="hidd-frame" frameborder="no" scrolling="no">
  </frameset>
</head>
</html>

上面的__MODULE__他目前的指向是当前admin文件夹下,Index是控制器,top之类的是方法,那么我们就打开IndexController.class.php控制器设置以下方法让他进行输出

<?php
namespace Admin\Controller;
use Think\Controller;
class IndexController extends Controller {
    public function index(){
       $this -> display();
      }

      public function top(){
          $this -> display();
      }

      public function menu(){
          $this -> display();
      }

      public function drag(){
          $this -> display();
      }

      public function main(){
          $this -> display();
      }
}

这样设置好了,但是打开http://localhost/shopp/index.php/admin/  后还是发现不能正常显示,原因也很简单,就是因为他的css和js之类的没引入进来,那么我们的解决方法是在项目的更目录下新建一个Public的目录然后在public里面建立一个叫Admin的目录,如下图所示:

然后在shopp\Shop\Common\Conf\config.php里面进行自定义目录,目的是为了更加的方便引入各种样式和图片,代码如下所示:

<?php
return array(
    //‘配置项‘=>‘配置值‘
    //系统中允许访问的模块(前后台)
    ‘MODULE_ALLOW_LIST‘      =>  array(‘Home‘,‘Admin‘),
    //配置默认进入模块Home
    ‘DEFAULT_MODULE‘         =>     ‘Home‘,//默认模块

        //数据库配置
        ‘DB_TYPE‘               =>  ‘mysql‘,     // 数据库类型
        ‘DB_HOST‘               =>  ‘localhost‘, // 服务器地址
        ‘DB_NAME‘               =>  ‘shopp‘,          // 数据库名
        ‘DB_USER‘               =>  ‘root‘,      // 用户名
        ‘DB_PWD‘                =>  ‘‘,          // 密码
        ‘DB_PORT‘               =>  ‘3306‘,        // 端口

        /*开启SESSION开关 */
        ‘SESSION_AUTO_START‘    =>  true,    // 是否自动开启Session

        //自定义目录,方便样式的引入
        ‘TMPL_PARSE_STRING‘         =>  array(
        //后台的
        ‘__ADMIN__‘=>‘/Public/Admin‘,
        ),

);

路径测试了,那么下一步就是来对wamp进行一个配置,

打开后进入里面拉到最低下加上

Include "D:/wamp/alias/*"
<VirtualHost *:80>
    DocumentRoot "D:\wamp\www\shopp"
    ServerName www.shop.com
</VirtualHost>

这段代码,因为我的wamp是放在D盘下的,所以我的DocumentRoot路径就指向那,大家可以看情况而定,

然后修改下host文件C:\Windows\System32\drivers\etc\hosts文件夹拉到最底部加上

127.0.0.1        www.shop.com

这段代码即可模拟出服务器端的环境了

对了别忘了从其apache噢,嘻嘻

然后对这下面的几个文件涉及到图片和样式的都该下即可,

如:

<link href="__ADMIN__/styles/general.css" rel="stylesheet" type="text/css" /><img src="__ADMIN__/images/ecshop_logo.gif" alt="ECSHOP - power for e-commerce" /><script type="text/javascript" src="__ADMIN__/js/transport.js"></script>

改成这样即可。

替换成功后首页即会变成这样

看上去没那么磕碜啦,嘻嘻..

不过我们在实际的情况下都是用到批量替换的噢,别手动一个个去换,有写模版太多图片之类的了,会改到发晕的噢..

时间: 2024-10-12 17:59:49

夺命雷公狗ThinkPHP项目之----商城6后台首页的相关文章

夺命雷公狗ThinkPHP项目之----商城8商品品牌管理

本章的主要目标是为了对商品品牌进行CRUD(增删改查)操作. 我们在写的时候就要了解业务逻辑,也就是了解表结构 每个字段代表什么含义,为什么是这个类型的 logo:保存的是图片,一般是分两个途径来保存的, 1.保存图片的本身,保存在目录之下 2.将图片的路径保存到数据表中 我们先创建一个名字为BrandController的控制器,和在view视图里面创建一个Brand的文件夹来进行存放模版文件,如下图所示: 然后将add里面的css和图片路径该下即可代码如下: <!DOCTYPE html P

夺命雷公狗ThinkPHP项目之----商城10商品属性管理

我们一般做项目前就要分析业务逻辑先,这次也不例外. attr_type:是指属性的类型,有唯一,单选和多选之分 唯一属性,是指用户在购买商品时,可以看到的扩展属性如下图所示: 单选属性,是指用户在购买的时候,不需要选择的扩展属性,否则就无法购买,如下所示: 多选和单选是对应的,但是可以选择多个,但是单选的只能选择一个,否则就无法购买. attr_input_type:是指属性的输入方式,有文本框,下拉列表和文本域之分,如下图所示: attr_value:是指如果属性是下拉形式的,应该提供可选值.

夺命雷公狗ThinkPHP项目之----商城2数据库设计

重要难度:五星 难度:无形 数据库的设计,就是体现了你对业务逻辑的了解 数据库设计的好坏,有时候决定了项目的成败 要点: 表与表之间的关系(一对一,一对多,多对多) 每一个字段的数据类型(数值,字符串,日期时间)没有布尔类型,使用tinyint来代替,1是真,0是假 设计数据库,以商品为例 找到核心(中心),然后一步步的展开 核心->商品 先来初步设计一下商品表的字段: 名称.价格.图片.颜色.上架时间.各种规格参数.详细描述,库存,品牌.分类. 品牌和商品是两个不同的东西,设计表的一个理念:一

夺命雷公狗ThinkPHP项目之----商城3编程思想

在实际的开发总,往往都是思想决定了高度. oop思想 OOP:Object Oriented Programming,面向对象程序设计,面向对象编程 OOP的三大特征 封装:通过类实现的,将内部实现细节隐藏起来,给外部提供一个接口进行调用 继承:通过extends来实现的,子类可以继承父类的属性和方法(Protected和public) 多态:php本身就是多态的,php是弱类型语言,在php中一般比较少提到多态的概念 OOP的好处 可维护性好 可扩展性好 可重用性高 灵活度高 MVC模式 M:

夺命雷公狗ThinkPHP项目之----商城5快速入门

本章是快速入门篇,有基础可直接跳过: 1.创建一个数据库名叫shopp的,然后穿件一张表 #创建用户表 create table user( id int unsigned not null auto_increment primary key comment '用户编号', username varchar(50) not null default '' comment '用户名', email varchar(50) not null default '' comment '电子邮箱', p

夺命雷公狗ThinkPHP项目之----企业网站1之快速搭建后台

我们还是老规矩照老方法,将框架里面多余的东西都干掉,然后在index.php里面将框架搭建起来 <?php //定义项目目录 define('APP_PATH','./WEB/'); //开启调试 define('APP_DEBUG',True); //包含thinkphp项目入口文件 require "Thinkphp/Thinkphp.php"; 然后进入WEB目录下,并复制一个Home然后改名为Admin 然后再Index控制器下进行操作 代码如下所示: <?php

夺命雷公狗ThinkPHP项目之----企业网站2之数据库的快速设计

我们在一个项目的时候,花费最多事件的估计还是数据库的时间了,我们的数据库暂时就这样设计好了: 暂时我们的数据库就这样设计好了用下先,建好后如下所示:

夺命雷公狗ThinkPHP项目之----企业网站28之网站前台左侧导航的实现

我们基于刚才在model层的找顶级分类的代码在进行修改即可: <?php namespace Home\Controller; use Think\Controller; class CommonController extends Controller { function __construct(){ //继承父类的构造方法,所以网站在执行的时候会先执行他 parent::__construct(); //头部二级分类的显示 开始 $mod = M("Category");

夺命雷公狗ThinkPHP项目之----企业网站8之栏目的添加完善(无限极分类的完成)

我们刚才只是完成了添加的一部分,但是我们的上级分类也不能永远都是只有一个死的嘛,所以我们需要对她进行修改: 我们先将add方法里面的数据查出来再说: 然后在模板页进行遍历: 展示效果如下所示: 虽然是出现了,但是没有向我们平常时候见到的无限极分类一样噢,一般比如分类 多多,分类下面的 好多美女啊 是多多的下级分类,那么好多美女啊他前面是有几个空格之类的隔开, 那么我们就需要在model层里面对她进行排序的设置了: <?php namespace Admin\Model; use Think\Mo