6.PHP操作MySQL的步骤
第一步:PHP连接MySQL服务器
第三步:设置MySQL请求或返回数据的字符集
第四步:执行各种SQL语句
l 查询SQL语句:mysql_query(“SELECT * FROM 007_news WHERE id<100”)
l 删除SQL语句:mysql_query(“DELETE FROM 007_news WHERE id=100”)
l 更新SQL语句:mysql_query(“UPDATE 007_news SET hits = hits+1 WHERE id = 100”)
l 插入SQL语句:mysql_query(“INSERT INTO 007_news(title,content) VALUES(‘标题’ , ‘内容’)”)
第五步:从结果集读取一条记录
l mysql_fetch_row($result):从结果集读取一条数据,以枚举数组返回。
l mysql_fetch_array($result,MYSQL_BOTH):从结果集读取一条数据,以混合数组返回。
l mysql_fetch_assoc($result):从结果集读取一条数据,以关联数组返回。
用户登录模块
1、管理员数据表——007_admin
username:用户名称
password:用户密码,是加过密的。
name:真实姓名
tel:联系电话
lastloginip:最后登录的IP地址
lastlogintime:最登录的时间。
loginhits:登录的总次数
status:账号状态,1启用,0停用。
addate:账号创建日期
2、登录流程图
3、登录主要代码
//***************************用户登录检查**************************
//连接MySQL数据库
include "conn.php";
//判断表单是否提交
if(isset($_POST["ac"]) && $_POST["ac"]=="login")
{
//获取表单提交数据
$username = $_POST["username"];
$password = md5($_POST["password"]);
//构建要查询的SQL语句
$sql = "SELECT * FROM 007_admin WHERE username='$username' and password='$password'";
//执行SQL语句
$result = mysql_query($sql);
//获取结果集中的记录条数
$records = mysql_num_rows($result);
//判断是否找到匹配
if($records)
{
//如果找到匹配
//获取相关变量信息
$lastloginip = $_SERVER["REMOTE_ADDR"];
$lastlogintime = time();
//构建更新的SQL语句
$sql = "UPDATE 007_admin SET lastloginip='$lastloginip',lastlogintime=$lastlogintime,loginhits=loginhits+1 WHERE username='$username'";
//执行SQL语句
mysql_query($sql);
//跳转到成功页面
$url = "manage.php";
$message = urlencode("用户登录成功!");
header("location:success.php?url=$url&message=$message");
}else
{
//如果没有找到匹配
$message = urlencode("用户名或密码不正确!");
header("location:error.php?message=$message");
}
}else
{
//如果非法操作
$message = urlencode("非法操作");
header("location:error.php?message=$message");
}
?>
新闻内容模块
1、数据表
DEDECMS、帝国CMS、discuz!、ecshop
cat新闻类型
title新闻标题
author发布人员
source来源
keywords:网页关键字
description:网页描述
orderby:排序
content:内容
hits:单击率
addate:发布时间
2、文件结构
5、修改新闻
(1)先读取指定id的数据,并写入对应的表单输入框中。
(2)照着原数据进行修改,然后单击提交表单。
5、修改新闻
(1)先读取指定id的数据,并写入对应的表单输入框中。
(2)照着原数据进行修改,然后单击提交表单。
//***********************修改新闻****************************
//连接MySQL数据库
include "conn.php";
//判断表单是否提交
if(isset($_POST["ac"]) && $_POST["ac"]=="edit")
{
//获取表单提交数据
$cat = $_POST["cat"];
$title = $_POST["title"];
$author = $_POST["author"];
$source = $_POST["source"];
$orderby = $_POST["orderby"];
$keywords = $_POST["keywords"];
$description= $_POST["description"];
$content = $_POST["content"];
$id = $_POST["id"];
//构建修改的SQL语句
$sql = "UPDATE 007_news SET cat=$cat,title='$title',author='$author',source='$source',orderby=$orderby,keywords='$keywords',description='$description',content='$content' WHERE id=$id";
//执行SQL语句
if(mysql_query($sql))
{
//如果执行成功,则跳转到success.php页面
$url = "manage.php";
$message = urlencode("记录修改成功!");
echo "<script>location.href='success.php?url=$url&message=$message'</script>";
exit();
}
}else
{
//获取地址栏传递的id
$id = $_GET["id"];
//构建查询SQL语句
$sql = "SELECT * FROM 007_news WHERE id=$id";
//执行SQL语句
$result = mysql_query($sql);
//取出一条记录
$arr = mysql_fetch_assoc($result);
}
6、分页原理
在线HTML编辑器:kindeditor、FCKeditor
将editor文件直接“复制”到day21目录即可。
在需要的编辑器的页面,引入如下文件:
<script charset="utf-8" src="js/editor/kindeditor-min.js"></script>
<script charset="utf-8" src="js/editor/lang/zh_CN.js"></script>
<script>
//加入在线编辑器
var editor;
KindEditor.ready(function(K) {
//在当前网页中,查找<textarea name = ‘content’></textarea>,并替换成kindeditor编辑器。
editor = K.create('textarea[name="content"]', {
allowFileManager : true //是否允许上传文件
});
});
</script>
<textarea id="content" name="content" style="width:100%;height:300px; "></textarea>
md5()
l 描述:计算字符串的 MD5 散列值
l 语法:string md5 ( string $str )
l 说明:以 32 字符十六进制数字形式返回散列值。
l 注意:md5的加密算法不再安全了。
l 举例:md5(“123456”) = e10adc3949ba59abbe56e057f20f883e
mysql_num_rows()
l 描述:获取结果集中的记录条数。
l 语法:int mysql_num_rows ( resource $result )
l 说明:此命令仅对 SELECT 语句有效
$_SERVER
描述:获取服务器执行环境信息。
$_SERVER[“REMOTE_ADDR”] //客户端的IP地址
$_SERVER[“SERVER_ADDR”] //服务器端的IP地址
最新文章
- 跨域post请求实现方案小结--转
- Visual Studio命令行工具
- 现在开始(Do It Now)
- 【Docker 在 windows 10 / windows 8 下安装】
- [翻译]:SQL死锁-死锁排除
- 《TCP/IP详解卷1:协议》第19章 TCP的交互数据流-读书笔记
- vc++ 6.0下Glut的配置 及 Glut 框架介绍
- 数组机、局域网ip查找
- MySQL 5.5.35 单机多实例配置详解
- oracle--number
- ActionBar官方教程(2)选主题让应用支或不支持ActionBar及支持ActionBar的应用如何隐藏和显示
- convention-plugin
- 在asp.net页面上按回车会触发Imagebutton控件的Click事件
- 10款超酷实用的jQuery焦点图赏析及源码
- debian+nginx配置初探--php环境、反向代理和负载均衡
- Memcache服务搭建
- RxJava(八)concat符操作处理多数据源
- git repository description
- 【kafka】confluent_kafka重置offset
- json文件读写函数