三分钟掌握PHP操作数据库

这里写自定义目录标题

      • 一、 操作数据库(mysql)的工具
        • 1.1命令行工具
        • 1.2navicat界面化工具
        • 1.3phpAdmin界面化工具
      • 二、 表单传值
        • 2.1文本框和文本域传值
        • 2.2单选框传值
        • 2.4下拉菜单传值
      • 三、 php连接数据库
        • 3.1连接方式介绍
        • 3.2mysqli基础步骤
          • 3.2.1创建连接
          • 3.2.2选择数据库
          • 3.2.3设置编码
          • 3.2.4执行sql语句(增删改查)
          • 3.2.5关闭连接
        • 3.3mysqli实操
          • 3.3.1执行增加操作
          • 3.3.2执行删除操作
          • 3.3.3执行更新操作
          • 3.3.4执行查询操作
      • 四、 实际案例
        • 4.1注册
        • 4.2登录案例

一、 操作数据库(mysql)的工具

1.1命令行工具

1.2navicat界面化工具

1.3phpAdmin界面化工具

一般情况下安装phpstudy的集成环境的时候自带的,目录在你的安装目录的www目录下面
在这里插入图片描述

然后在浏览器地址栏输入如下:
在这里插入图片描述

里面功能自己简单操作一下即可。
如果你的www目录下面没有phpadmin,然后自己下载一下
https://www.phpmyadmin.net/downloads/
在这里插入图片描述

下载以后解压缩放到www下面即可。

二、 表单传值

2.1文本框和文本域传值

前台:
在这里插入图片描述

后台:
在这里插入图片描述

注意:如果是post发送数据,后台也得用$_POST接收,post发送数据量相对比较大,比较安全。

如果是get方式发送数据
在这里插入图片描述

后台也得用$_GET[‘name名’],而且get发送数据会在地址栏里显示出来,不太安全,还有数量限制。
在这里插入图片描述

2.2单选框传值

在这里插入图片描述

后台这样接收
在这里插入图片描述

2.3多选框传值
前台:
在这里插入图片描述

后台:
在这里插入图片描述

2.4下拉菜单传值

在这里插入图片描述

后台接收:
在这里插入图片描述

三、 php连接数据库

3.1连接方式介绍

https://www.php.cn/php/php-mysql-connect.html

php连接数据库主要有下面几种方式:
1、 mysql 库 这个已经废弃 不支持面向对象
2、 mysqli 扩展 是上面的升级,支持面向对象,只能连接mysql
3、 PDO也支持面向对象,能连接多种数据库。
以后操作的时候根据实际情况选择。

3.2mysqli基础步骤

在使用mysqli之前先确认一下自己的是不是支持mysqi扩展,随便写一个php文件,里面输入
phpinfo();
在这里插入图片描述

然后浏览器访问这个php文件,按住ctrl+f出现搜索框以后输入mysqli,看是否支持。
在这里插入图片描述

3.2.1创建连接

$con=mysqli_connect(‘数据库所在服务器地址’,’用户名’,’密码’);
返回的是一个连接对象

3.2.2选择数据库

mysqli_select_db($con,’连接的数据库名’);

3.2.3设置编码

mysqli_set_charset($con,’utf8’);

3.2.4执行sql语句(增删改查)

先写sql语句
$sql=”增删改查的语句”;
执行语句:
res=mysqliquery(res=mysqli_query(res=mysqliquery(con,$sql);

3.2.5关闭连接

mysqli_close($con);

3.3mysqli实操

3.3.1执行增加操作

在这里插入图片描述

3.3.2执行删除操作

在这里插入图片描述

3.3.3执行更新操作

在这里插入图片描述

3.3.4执行查询操作

(1)mysqli_fetch_assoc()
这种方法是从资源中获取一行数据的方法,返回值是一个由字段名和每行的值组成关联数组
在这里插入图片描述

浏览器访问如下:
在这里插入图片描述

我们最好使用循环的方式来获取数据,如下:
在这里插入图片描述

备注:
mysqli_fetch_assoc(获取的资源)拿到的是一个关联数组,而且每调用一次是获取一行的数据。

(2)mysqli_fetch_row
mysqli_fetch_row()这个方法获取的也是数组,但是是索引数组
在这里插入图片描述

(3)mysqli_fetch_array
mysqli_fetch_array 这个方法返回如下:
在这里插入图片描述

既有关联数组又有索引数组,我们用哪种方式获取都可以。还是获取的一行的数据。
在这里插入图片描述

这种方式用关联数组或者索引数组的方式都能获取。

(4)三种方式比较

mysqli_fetch_assoc()获取的是关联数组
mysqli_fetch_row()获取的是索引数组。
mysqli_fetch_array()返回的既有关联数组又有索引数组,但是效率低点。如果我想提高第三种方式的效率,可以添加第二个参数。
mysqli_fetch_array($res,MYSQLI_ASSOC)获取的就是关联数组
mysqli_fetch_array($res,MYSQLI_NUM)获取的就是索引数组

四、 实际案例

4.1注册

注册就是点击注册按钮的时候把用户在输入框里输入的内容保存到数据表中
在这里插入图片描述

登录的时候再连接数据表进行查询,看这次用户在输入框中输入的用户名或者密码等是否在数据表中存在,正确他注册过,就让他登录成功,否则报用户名或者密码错误。

我们先实现注册页面:
在这里插入图片描述

实现php接收数据并插入数据表的逻辑
在这里插入图片描述

4.2登录案例

先实现登录页:
在这里插入图片描述

实现接收用户输入的数据从数据表进行查询和比对
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/248648.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

看完就会的文件编程

文章目录文件编程1.1文件操作函数1.1.1file()函数1.1.2fopen fgets fclose1.2.1读取模式1.2.2写入内容(开头)1.2.3写入内容(追加)1.1.3file_get_contents1.1.4文件路径相关函数1.1.5file_exists1.1.6feof1.1.7copy()1.1.8set_incl…

一文吃透PHP和HTML的嵌套写法

1.1全部php生成结构 1.2html中嵌套php 总结如下&#xff1a; html和php混写规则&#xff1a; php代码必须包在<?php ?>html中写php也是同理&#xff0c;但是有值输出必须加上echo 1.3博客项目 1.3.1前后台 前台主要是做数据展示的&#xff0c;所有的用户通过访问域…

一文看懂 GD2库

文章目录一、 GD2简介1、 验证码&#xff08;实际上是一个img&#xff09;二、 GD2库使用步骤2.1添加扩展2.2修改php配置文件2.3重启服务三、 GD2里面的常用方法3.1 imagecreate3.2 imagecolorallocate3.3 imagefill3.4 输出图像资源3.5创建真彩画布3.6在图像中写文字3.6.1imag…

算法实践--最小生成树(Kruskal算法)

什么是最小生成树(Minimum Spanning Tree) 每两个端点之间的边都有一个权重值&#xff0c;最小生成树是这些边的一个子集。这些边可以将所有端点连到一起&#xff0c;且总的权重最小 下图所示的例子&#xff0c;最小生成树是{cf, fa, ab} 3条边 Kruskal算法 用到上一篇中介绍的…

洽谈 “会话技术” 纯干货赶紧收藏吧

文章目录一、 HTTP协议二、 会话三、 cookie3.1概念和设置cookie3.2读取cookie3.3设置cookie有效期3.4cookie是跨页面的3.5删除cookie3.6登录案例3.7cookie特点四、 session4.1概念4.2设置session4.3获取session4.4清除session4.5模拟购物车案例一、 HTTP协议 HTTP协议是Hyper…

[bzoj2729][HNOI2012]排队 题解 (排列组合 高精)

Description 某中学有 n 名男同学&#xff0c;m 名女同学和两名老师要排队参加体检。他们排成一条直线&#xff0c;并且任意两名女同学不能相邻&#xff0c;两名老师也不能相邻&#xff0c;那么一共有多少种排法呢&#xff1f;&#xff08;注意&#xff1a;任意两个人都是不同的…

详解 正则表达式

文章目录一、概念二、作用三、语法规则3.1定义规则3.2符号简介3.3preg_match用法详解3.4详解元字符3.4.1 \d和[0-9]3.4.2 \D和[^0-9]3.4.3^和$3.4.4*代表出现0次或者多次3.4.5代表出现1次或者多次3.4.5&#xff1f;代表出现0次或者1次3.4.6{n}3.4.7{n,}3.4.8{n,m}3.4.9点号&…

Java:控制台输入车辆信息,将信息保存至数据库中

程序功能&#xff1a;控制台输入车辆信息&#xff0c;将信息保存至数据库中 程序代码如下&#xff1a; BaseDao.java package DAO_dome.kehozuoye; import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;i…

echars 3D地图为区域自定义颜色

echars 3D地图为区域自定义颜色问题延伸解决问题问题 根据项目需求&#xff0c;我们要将下面省级地图中的个别市进行高亮&#xff08;不同颜色&#xff09;展示 延伸 首先跟大家介绍这个地图的展示方式&#xff1a; 采用的是Vue框架中运用echarts地图采用的是geo3D和scatt…

基于Python语言使用RabbitMQ消息队列(一)

介绍 RabbitMQ 是一个消息中间人&#xff08;broker&#xff09;: 它接收并且发送消息. 你可以把它想象成一个邮局: 当你把想要寄出的信放到邮筒里时, 你可以确定邮递员会把信件送到收信人那里. 在这个比喻中, RabbitMQ 就是一个邮筒, 同时也是邮局和邮递员 . 和邮局的主要不同…

爆赞程序猿开发软件

VSCode 使用 IntelliSense 超越语法突出显示和自动完成&#xff0c;它提供基于变量类型、函数定义和导入模块的智能完成 直接从编辑器调试代码。启动或附加到您正在运行的应用程序并使用断点、调用堆栈和交互式控制台进行调试 与 Git 和其他 SCM 提供商合作从未如此简单。查…

如果你在北京失业了,别怕,记得去领这笔钱!最少2034元/月!

人在江湖飘&#xff0c;哪能不挨刀 公司倒闭&#xff0c;老板走人&#xff0c;公司裁人 …… 就要被迫失业了 别怕! 如果你在北京失业了 记得去领这笔钱——失业保险金 每月最多有2143元 虽然钱不多&#xff0c;但能解燃眉之急 帮助你度过困难日子 重点全程网上就能…

真实诠释程序员日常的二十四张图【你中了几个】

当你打开遗留代码时 扒下来项目后改了一行代码…… 程序员调试css样式的时候 当你的try catch 不起作用 产品经理对你说要兼容IE 没有ui给你提供大小设计的结果 没吃透需求直接开发的你 程序员修复bug的真实处境 当你开始使用库&#xff0c;但忘记阅读文档 产品经理告诉你这只是…

Git学习原版手稿

手稿诞生记 Git学习的时候难免会有遗忘然后往复学习查看的过程&#xff0c;所以就形成了这个学习的手稿&#xff0c;记录了Git使用过程中的大部分命令&#xff0c;今天在清理的时候偶然看到了这些记录&#xff0c;而且最近也在写Git的使用教程&#xff0c;大致的学习线路也是按…

程序员首选编程电脑【火爆来袭】

作为一名程序员肯定会常用到一些编程软件&#xff0c;所以需要设备的配置参数上不能太差&#xff0c;不仅是要以稳定强大输出为基本&#xff0c;内存、音响、续航等方面也不可或缺。 直奔主题 如果你手里资金到位&#xff0c;那必须整一步到位——MacBook 对于这款大佬型笔记本…

强大的APIClound云修复——告别繁琐的编译打包流程

小编接到一项目的二期开发任务&#xff0c;拉下代码开始熟悉大概的框架、技术、上线流程等前期工作&#xff0c;本app是通过vue技术进行开发&#xff0c;使用ui是 vant 库&#xff0c;打包上线则是使用的 APIClound 平台&#xff1b; 在我们的app上线后&#xff0c;如果我们改…

你对ES6究竟了解多少?—— 有这一篇就够用了

1. ES6相关概念&#xff08;★★&#xff09; 1.1 什么是ES6 ES 的全称是 ECMAScript , 它是由 ECMA 国际标准化组织,制定的一项脚本语言的标准化规范。ES6 是ES2015以后的泛称 1.2 为什么使用 ES6 ? 每一次标准的诞生都意味着语言的完善&#xff0c;功能的加强。JavaScrip…

JavaScript 高级——详谈面向对象

1.面向过程与面向对象 1.1面向过程 面向过程就是分析出解决问题所需要的步骤&#xff0c;然后用函数把这些步骤一步一步实现&#xff0c;使用的时候再一个一个的依次调用就可以了。 1.2面向对象 面向对象是把事务分解成为一个个对象&#xff0c;然后由对象之间分工与合作。…

UVa202Repeating Decimals (循环小数)

解答&#xff1a; 因为除数是固定的&#xff0c;所以只要判断被除数是否出现过即可。 #include<iostream> #include <cstdio> #include <cstring> using namespace std; int m,n,vis[5000],res[5000],temp[5000],num,t,x; int main() {while(scanf("%d%…

构造函数、原型、继承原来这么简单?来吧,深入浅出

构造函数 小编上篇博客中介绍到的通过关键字class方式定义类&#xff0c;然后根据类再创建对象的方式&#xff0c;是ES6中语法&#xff0c;现在很多浏览器对ES6的支持还不是很好&#xff0c;所以也要学习通过构造函数&#xff08;构建函数&#xff09;的方式创建对象 问&…