php连接数据库

数据库

常用的数据库有?

数据库软件:mysql,sqlserver,orcale,mongdb,db2

数据存储的仓库:硬盘 U盘 网盘 光盘 excel

数据库软件存放的数据?

​ 结构化的数据


数据库有

> 关系型数据库mysql以表作为数据的基础结构
> 非关系型数据库:存储的内容以文档形式
MySQL

特点:开元、安全、稳定、跨平台的关系型数据库


sql语句
sql语句适用于大部分的关系型数据库,关键字不区分大小写
#创建表
create `表名`
#查询
select *from `表名`
#增加
insert into `表名` 字段名 values ‘加入的字段名’
#删除
delete from 表名 where条件
#修改
update `表名` set 字段=赋值 where 条件

数据库的连接

1、连接数据库,判断是否连接成功
$mysql_key=array(
    'host'=>'localhost:3306',//mysql数据库的默认地址
    'db_user'=>'root',//数据库的登录用户名
    'db_pass'=>'root',//数据库的登录密码
    'db'=>'html-2006'//选择的数据库名
);
//mysqli登录数据库,一个永远连接函数,@表示可以屏蔽错误警告
$mysqli=@new mysqli($mysql_key['host'],$mysql_key['db_user'],$mysql_key['db_pass']);

//如果没有连接上数据库,则终止代码的执行
if($mysqli->connect_errno){
    die('连接错误'.$mysqli->connect_errno)//显示错误代码编号方便查询错误
};

mysqli表示登录数据库,一个永远连接函数,@表示可以屏蔽错误警告

php中的对象属性用->访问,$mysqli->connect_errno错误代码

$mysqli->query查询数据库,相当于数据库中的select

$mysqli->error

$mysqli->fetch_assoc()获取一条数据

2、设置查询字符串防止乱码
//mysql选择Unicode-general-ci不区分大小写
$mysqli->query('set names utf8');
3、选择数据库
$select_db=$mysqli->select_db($mysql_key['db']);
if(!$select_db){die('数据库选择错误'.$mysqli->error)}

注册页面

include(’’)引入连接数据库的页面

注册逻辑
1)include('')引入连接数据库的页面
2)后端接收前端以get方式发送的数据
3)验证用户名是否存在,在后端数据库中查询,查询完后关闭数据库
	>num_rows查询到的行数大于0,则表示用户名以存在,跳转到到注册页面
3)(1)如果用户名存在,返回数据用户名已存在,注册失败
	(2)如果用户名不存在,将数据insert写入数据库,并让前端响应注册成功,跳转到登录界面
<?php
include('./connect.php');
$username=$_REQUEST['username'];
$password=$_REQUEST['password'];
$email=$_REQUEST['email'];
$address=$_REQUEST['address'];
$phone =  $_REQUEST['phone'];
$sql="select * from users where username='$username'";
$result=$mysqli->query($sql);
if($result->num_rows>0){
    echo '<script>alert("用户名已存在");</script>';
    echo '<script>location.href="../register.html";</script>';
    $mysqli->close();
    die();
}
$insert="insert into users(username,password,email,phone,address) values('$username','$password','$email','$phone','$address')";
$res=$mysqli->query($insert);
if($res){
    echo '<script>alert("注册成功");</script>';
    echo '<script>location.href="../login.html";</script>';
}
?>

登录页面

登录逻辑
1)include('')引入连接数据库的页面
2)后端接收前端以get方式发送的数据
3)查找用户名和密码是否存在,在后端数据库中查询,查询完之后关闭数据库
	如果没有数据,用户名和密码错误,跳转到登录界面
	如果有数据,>num_rows查询到的行数大于0,则表示用户名和密码存在以存在,跳转到到index页面
<?php
include('../lib/connect.php');
$username=$_REQUEST['username'];
$password=$_REQUEST['password'];
$sql="select * from users where username='$username' and password='$password'";
$res=$mysqli->query($sql);
$mysqli->close();
if($res->num_rows>0){
echo '<script>alert("登录成功")</script>';
echo '<script>location.href="../index.html"</script>';
}else{
    echo '<script>alert("用户名或密码错误")</script>';
    echo '<script>location.href="../login.html"</script>';
}

?>
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值