知识屋:更实用的电脑技术知识网站
所在位置:首页 > 编程技术 > PHP编程

php基础系列:从用户登录处理程序学习mysql扩展基本操作

发布时间:2014-09-05 10:22:22作者:知识屋

用户注册和登录是网站开发最基本的功能模块之一,现在通过登录处理程序代码来学些下php对mysql的基本操作。
本身没有难点,主要是作为开发人员,应该能做到手写这些基本代码,算是自己加强记忆,同时希望能给初学者一些参考借鉴。
php连接MySQL数据库服务器的时候,有三种主要的API可供选择:
PHP的MySQL扩展
PHP的mysqli扩展
PHP数据对象(PDO) 
 
<?php
 
//接收用户登录窗口输入数据
$username = $_POST['username'];
$password = $_POST['password'];
 
//连接数据库
$conn = mysql_connect('dbip','dbuser','dbpassword');
if(!$conn){
dir('连接失败'.mysql_errno());
}
//设置访问库编码方式
mysql_query("set names utf8",$conn) or dir(设置编码失败'.mysql_errno());
//选择数据库
mysql_select_db("dbname",$conn) or dir('选择数据库失败'.mysql_errno());
 
//发送sql语句,注意预防sql注入
$sql = "select  password,nickname from tb_user where username='$username'";
$res = mysql_query($sql,$conn);
 
//如果有数据
if($row = mysql_fetch_assoc($res)){
//判断密码
if($password == md5($row['password'])){
//合法用户
 
$nickname = $row['nickname'];
header("Location:success.php?nickname=$nickname");
exit();
 
}
 
//用户或者密码错误
//现在的网站不再具体提示用户是用户名错还是密码错,避免黑客有针对性破解密码
header("Location:failed.php");
exit();
 
//还需考虑关闭资源和连接,注意安排代码位置
//mysql_free_result($res);
//mysql_close($conn);
 
?>
 
其它知识:
如果是列表页,显示多条记录
 
if($row = mysql_fetch_assoc($res))相应修改为 while($row = mysql_fetch_assoc($res))  。
 
(免责声明:文章内容如涉及作品内容、版权和其它问题,请及时与我们联系,我们将在第一时间删除内容,文章内容仅供参考)
收藏
  • 人气文章
  • 最新文章
  • 下载排行榜
  • 热门排行榜