现在的位置: 首页php-基础语法>正文
cms的首页  
发表于693 天前 php-基础语法 评论数 3

根据php写的cms模板首页,设计cms的首页。

cms的首页文件中,主要设计的是文章页码,然后注册功能和登录功能以及登录成功和失败跳转页面的实现。

例如:

<!-- index.php -->
<?php require_once("Connections/conn.php"); ?>
<?php
//分页
$maxRows_rs_articles = 20;  //每页显示的记录数
$pageNum_rs_articles = 0;  //页面从0开始
if(isset($_GET['pageNum_rs_articles']))
{//获取当前的页码
    $pageNum_rs_articles = $_GET['pageNum_rs_articles'];
}
$startRow_rs_articles = $pageNum_rs_articles * $maxRows_rs_articles; //起始的记录数
//读取文章信息
mysql_select_db($database_conn, $conn);
$query_rs_articles = "SELECT * FROM articles WHERE checked_indc=1 ORDER BY last_upt_time DESC";
$query_limit_rs_articles = sprintf("%s LIMIT %d, %d", $query_rs_articles, $startRow_rs_articles, $maxRows_rs_articles);
$rs_articles = mysql_query($query_limit_rs_articles, $conn) or die(mysql_error());
$row_rs_articles = mysql_fetch_assoc($rs_articles);
//设定分页页码
if(isset($_GET['totalRows_rs_articles']))
{
    //如果参数中存在总记录数则获取
    $totalRows_rs_articles = $_GET['totalRows_rs_articles'];
}
else
{//计算记录数
    $all_rs_articles = mysql_query($query_rs_articles);
    $totalRows_rs_articles = mysql_num_rows($all_rs_articles);
}
$totalPages_rs_articles = ceil($totalRows_rs_articles/$maxRows_rs_articles)-1;//计算总页数
//获取文章 类别信息
mysql_select_db($database_conn,$conn);
$query_rs_types = "select * from types order by type_id ASC";
$rs_types = mysql_query($query_rs_types,$conn)
or die(mysql_error());
$row_rs_types = mysql_fetch_assoc($rs_types);
$totalRows_rs_types = mysql_num_rows($rs_types);
//获取网站配置信息
mysql_select_db($database_conn,$conn);
$query_rs_config = "select * from config,templates where config.template_id = templates.template_id";
$rs_config = mysql_query($query_rs_config,$conn)
or die(mysql_error());
$row_rs_config = mysql_fetch_assoc($rs_config);
$totalRows_rs_config = mysql_num_rows($rs_config);

//验证用户权限
session_start();
$loginFormAction = $_SERVER['PHP_SELF']; //php_self 是什么?
if(isset($accesscheck))
{
    //检查是否已经登录
    $GLOBALS['PrevUrl'] = $accesscheck;
    session_register('PrevUrl');
}
//如果登录,获取用户登录信息
if(isset($_POST['username']))
{
    $loginUsername = $_POST['username'];
    $password = $_POST['password'];
    $MM_fldUserAuthorization = "userflag"; //定义用户级别
    $MM_redirectLoginSuccess = "index.php"; //登录成功,转向index.php
    $MM_redirectLoginFailed = "index.php"; //登录失败,也返回index.php
    mysql_select_db($database_conn,$conn);
    //定义sql语句
    $loginRS_query = sprintf("select username,password,userflag from users where username = '%s' and password='%s'",
    get_magic_quotes_gpc()?$loginUsername:addslashes($loginUsername),
    get_magic_quotes_gpc()?$password:addslashes($password));
    $LoginRS = mysql_query($loginRS_query,$conn)
    or die(mysql_error());
    //获得用户数
    $LoginFoundUser =mysql_num_rows($LoginRS);

//如果登录成功,则检查当前登录是否开启。如果用户不是admin,并且网站登录已经关闭,也不允许登录
if($LoginFoundUser)
{
    $loginStrGroup = mysql_result($LoginRS,0,'userflag');
    if($loginStrGroup!='admin' && $row_rs_config['login_indc']==0)
    {
        die("网站现在不开放登录功能");
    }
}
//定义存放用户信息的session
$GLOBALS['MM_Username'] = $loginUsername;
$GLOBALS['MM_UserGroup'] = $loginStrGroup;
session_register("MM_Username");
session_register("MM_UserGroup");
//登录成功后跳转
if(isset($_SESSION['PrevUrl']) && false)
{
    $MM_redirectLoginSuccess = $_SESSION['PrevUrl'];
header("Location: ".$MM_redirectLoginSuccess);     //跳转
}
else
{
    header("Location: ".$MM_redirectLoginFailed);
}
}
//检查网站是否关闭
if($row_rs_config['available_indc']==0)
{
    die("网站正在维护,请稍后访问");
}
//调用模板文件
include('templates\\'.$row_rs_config['folder_name'].'\\index.inc.php');
//关闭数据库链接
mysql_free_result($rs_articles);
mysql_free_result($rs_types);
mysql_free_result($rs_config);
?>
【上篇】
【下篇】

cms的首页:目前有3 条留言

  1. MK : 2010年06月28日8:38 下午

    又是一些我看不懂的语言

    老张 回复:

    慢慢看就懂了

  2. 原创.可.贴. : 2010年07月08日12:07 上午

    “又是一些我看不懂的语言”,慢慢也看不懂,,,,

不想听你唠叨×