数据库

作者: 成都阿童木 | 来源:发表于2019-01-20 16:32 被阅读0次

https://www.bilibili.com/video/av21010200/?p=34

1.链接数据库

$link=mysqli_connect("localhost","root","password");

2.判断是否连接成功

if(!$link){

die("connect error:".mysqli_connect_error);

}

else 

echo "连接成功"; 

3.设置字符集

mysqli_set_charset($link,"utf8");

4.选择数据库

mysqli_select_db($link,test);  //test是数据库

5.准备sql语句

$sql="select * from tb_admin ";  //tb_admin是取的表名

6.发送sql语句

$obj=mysqli_query($link,$sql);  //失败时返回 FALSE,通过mysqli_query() 成功执行SELECT, SHOW, DESCRIBE或 EXPLAIN查询会返回一个mysqli_result对象,其他查询则返回TRUE

7.处理结果集

$result=mysqli_fetch_assoc($obj);  //会自动取下一行

$result=mysqli_fetch_assoc($obj);

$result=mysqli_fetch_assoc($obj);  //每一句都是取表中的一行,第一句取第一行,第二句取第二行。返回的是一维的关联数组

8.关闭数据库库(释放资源)

mysqli_close($link);

9. 常用函数

$result=mysqli_fetch_assoc($obj) 返回带关联的一个数组,当表中字段竖向排列时,是一个第一列数据的关联数组

只带关联

取所有行数据,用循环

while(mysql_fetch_assoc($obj))

    var_dump(mysql_fetch_assoc($obj));

$result=mysqli_fetch_row($obj)返回带索引的一个数组,其余与上个相同

只带索引

$result=mysqli_fetch_array($obj)返回既带索引又带关联的数组


关联索引都带

$result=mysqli_num_rows($obj) 返回表的行数,即有多少条数据 (在sql看来,字段是横着排列的?PHPmyadmin中是竖着的)

如图字段是横着排的

以上的函数必须先执行查询操作 即 select * from table_name(至少插入后执行会报错)

$result=mysqli_affected_rows($link)  返回前一次 MySQL 操作(SELECT、INSERT、UPDATE、REPLACE、DELETE)所影响的记录行数

$result=mysqli_insert_id($link)返回最后一次插入的id

10.插入数据

$sql="insert into student(name ,id ,age) values('chen','2011414','18')";  //student是表名 name,id,age是字段

$obj=mysqli_query($link,$sql);  //插入操作返回的是true或false

11.删除,修改和添加


这是我的代码,注意点击删除后,id会通过url传输,链接标签有疑惑,引号问题。


点击john的删处后,注意url上的id。是属于john的id


删除操作 delete.php

sql语句 delete from table_name where xxx="xxxxxx"

比如此处是根据id删除,看图中注释


修改操作 change.php

sql语句:update table_name set  name="xxx", age="xxxx" where id="xxx"

注:name age id是我数据库里定义的字段。不建议修改id, id最好是唯一的。

              $name="chenrui"  ;

               则对应sql语句为

             update table_name set  name='$name'   where id="xxx"

注意即使$name已经是字符串了,但在sql语句中依然要给变量加单引号

在主页面点击修改后,会跳到修改页面(form表单实现),点击提交后,会跳到另一个用于修改数据库的页面。

test.php 主页面

change.php 主要是表单操作,用于输入修改的值,将修改的值通过url(前提表单使用get方法)传给修改数据库的php文件。当<input>有name属性时,就会通过url传递name属性,属性的值就是输入的内容。由于无法修改id,所以通过hidden类型的<input>传递id 


hidden属性


change.php


点击提交后,url如图



dochange.php 用于修改数据库的数据。

用$_GET变量从url获取数据。$_GET["name"]中的name下标是<input>的name属性,这个数组的值才是修改时填入的内容


添加操作


add.php 创建一个表单,用于输入添加的信息,id不用输入,数据库自动分配


doadd.php 向数据库添加数据  主要是用insert into 语句



分页的实现

sql语句

 SELECT * FROM table LIMIT [offset,] rows 

  LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1)

SELECT * FROMtable LIMIT 5,10; // 检索记录行 6-15

sql的count()函数

select count(column_name)  [ as  xxx ]  from table [ where column_name=xxxxx]

在php中,必须用下面方式才能得到结果。是一个关联数组,键值就是个数

最终代码 还是在test.php内

注册登录

登录使用到的关键sql语句

$sql="select username , password from user where username='$username'and password= '$password' ";

mysqli_num_rows[$obj]用于判断查询语句查到了几条记录。如果为真 说明账户密码输入正确。

注册用到的

$sql2 = "insert into user(username , password) values('$username' , '$password')";

login.php

dologin.php

regist.php

doregist.php

相关文章

  • MySQL数据库day01

    系统数据库 ​​​ 创建数据库 ​​​ ​​​ ​​​ ​​​ 查看所有数据库 使用数据库 修改数据库 删除数据库...

  • 数据库操作

    创建数据库: 选择数据库: 查看数据库: 修改数据库: 删除数据库:

  • Ubuntu操作mysql数据库命令

    一、连接数据库 连接本地数据库 退出数据库 二、操作数据库 创建数据库 显示数据库 删除数据库 连接数据库 查看状...

  • 4-14

    创建数据库 createdatabase数据库名称; 删除数据库 dropdatabase数据库名称; 查看数据库...

  • [后端开发] Mysql学习笔记

    1.0 数据库 创建数据库 查看所有数据库 删除数据库 切换数据库名 查看正在使用的数据库 2.0 数据库表 创...

  • 2020最新最全数据库系统安全

    数据库标识与鉴别 数据库访问控制 数据库安全审计 数据库备份与恢复 数据库加密 资源限制 数据库安全加固 数据库安...

  • 2020-01-05 sql基本概念

    数据库用来储存数据。 数据库的种类大致有:层次数据库、关系数据库、面向对象数据库、XML数据库、键值数据库。 关系...

  • Mysql数据库基本操作

    连接数据库 退出数据库 查看数据库版本 显示数据库时间 查看当前使用的数据库 查看所有数据库 数据库备份 导入数据...

  • mysql命令行操作

    准备 登陆 数据库操作 查看现有数据库 创建数据库 删除数据库 查看数据库 使用数据库 查看当前数据库 表操作 新...

  • 1.7.1 MySQL数据库学习

    1. 数据库命令行学习 进入数据库 创建数据库 查看数据库列表 删除数据库 使用数据库 查看当前数据库 2. 表 ...

网友评论

      本文标题:数据库

      本文链接:https://www.haomeiwen.com/subject/tmfxjqtx.html