根据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的首页 | phpdo|学习PHP的笔记
+复制链接








又是一些我看不懂的语言
老张 回复:
六月 28th, 2010 at 10:46 下午
慢慢看就懂了
“又是一些我看不懂的语言”,慢慢也看不懂,,,,