我的php学习第二十二天——MySQL增,删,改,查基础操作
bigegpt 2024-10-12 05:48 7 浏览
1.MySQL客户端下,操作MySQL的步骤
第一步:连接到MySQL数据库服务器 mysql –uroot -root
第二步:选择要操作的数据库(当前数据库) use db_name
第三步:设置字符集 set names gbk
第四步:执行SQL语句:增、删、改、查
增加:INSERT INTO table_name(title,author,addate) VALUES(‘标题’,’admin’,now())
删除:DELETE FROM table_name WHERE 条件表达式
修改:UPDATE table_name SET title=“新的标题” WHERE 条件表达式
查询:SELECT * FROM table_name WHERE条件 ORDER BY LIMIT
2.PHP操作MySQL的步骤(MySQL的函数)
第一步:连接MySQL数据库服务器
mysql_connect()
含义:连接到MySQL数据库服务器
格式:resource mysql_connect(主机地址,用户名,用户密码)
返回值:如果连接成功返回资源标识符,如果连接失败,返回false
举例:$link = mysql_connect(“localhost”,”root”,”root”);
exit()
含义:输出信息后中断脚本继续向下运行
格式:void exit([$string])
说明:$string参数是可选的,如果没有参数,则直接中断;如果有参数,则先输出,再中断
举例:exit(“连接MySQL失败”);
header()
含义:通过header()函数,向浏览器客户端发送一些信息,如:字符集设置、网页跳转等。
格式:void header($string)
注意:header()函数前,不能有任何的输出,包括:空格、空行、以及任何的HTML代码。一般来说,header()函数应该写在第一行代码之前。
举例:
header(“content-type:text/html;charset=utf-8”); //设置字符集
header(“location:http://www.sina.com.cn”); //跳转网页
以上是连接MySQL失败的系统信息。一般情况下,不要将系统的出错信息暴露给“黑客”。解决的办法,可以将错误信息进行屏蔽。屏蔽用的符号是“@”符。
举例:$link = @mysql_connect("localhost","r9oot","root");
mysql_get_host_info()
含义:如果连通MySQL后,显示服务器的一些信息。
格式:mysql_get_host_info()
第二步:选择要操作的数据库
提示:一个中小型网站,只有一个数据库,不会太多。
mysql_select_db()
含义:选择当前做为操作的数据库。
格式:bool mysql_select_db(db_name[,$link])
参数:db_name就是要选择的数据库名称
$link是可选项,代表当前活动连接。如果$link省略,则以上一次连接MySQL成功时的那个连接(资源)为准。
举例:mysql_select_db(“saixinjituan”)
mysql_error()
含义:显示最近一次操作MySQL的出错信息。
格式:string mysql_error()
第三步:设置MySQL返回的数据字符集
mysql_query(“set names utf8”)
提示:设置字符集,应在“选择数据库”之后,在其它的SQL语句执行之前。
第四步:执行SQL语句
mysql_query()
含义:执行SQL语句,包括任何合法的SQL语句。
格式:resource mysql_query(string $sql[,$link])
参数:$sql是任何合法的SQL语句;$link是当前活动连接
举例:
查询前10条的新闻: $result = mysql_query(“select * from 007_news id<=10”);
创建一个数据库(要有权限):mysql_query(“CREATE DATABASE IF NOT EXISTS db_name”);
删除ID=10的记录:mysql_query(“DELETE FROM 007_news WHERE id=10”);
注意:mysql_query()对于select、describe、show返回资源标识符;对于其它的命令成功返回true,失败返回false
mysql_fetch_row()
含义:从结果集中取得一行,作为枚举数组返回。
格式:array mysql_fetch_row(结果集$result)
返回值:是一个枚举数组,可通过print_r()来打印。
mysql_fetch_array()
含义:从结果集中取得一行,作为混合数组返回
格式:array mysql_fetch_array($result)
mysql_fetch_assoc()
含义:从结果集中取得一行,作为关联数组返回
格式:array mysql_fetch_assoc($result)
3.综合案例
企业网站的开发、制作基本分为前台和后台。
前台功能相对简单,就是读取数据(SELECT)。
前台功能相对复杂,方方面面都牵扯到了。
网站后台登录的一个流程图
网站后台的文件结构
include文件夹:公共功能的文件夹(核心文件)
config.php 公共配置文件
conn.php 连接数据库的公共文件
functions.php 常用的函数定义文件
第一功能模块:先做登录模块
(1)文件列表:
login.php 登录的静态页面
login_check.php 获取登录信息,与数据库进行比对
(2)数据表:007_admin
Username:用户名
Password:密码,经过md5()函数加密码
Name:真实姓名
Tel:联系手机
Lastloginip:最后登录的客户端的IP地址
Lastlogintime:最后登录成功的时间
Loginhits:登录的总次数
Status:账号的状态,1为启用,0为禁用。
Addate:账号的创建时间
4.PHP全局数组
如何获取表单提交的数据?我们需要使用PHP全局数组来获取。
1 | $_SERVER[ ]:获取服务器的一些相关信息$_SERVER[“SERVER_NAME”],网站的域名$_SERVER[“SERVER_ADDR”],服务的IP地址$_SERVER[“REMOTE_ADDR”],客户端的IP地址$_POST[ ]:获取method=post的表单提交的值$username = $_POST[“username”];$password = $_POST[“password”];$_GET[ ]:获取 method=get 的表单提交的值$username = $_GET[“username”];$password = $_GET[“password”]; |
5.包含文件:将其它的文件代码包含(复制)进来
include(fileName)包含外部文件,如:include(“cofig.php”)
require(fileName)包含外部文件,如:require(“config.php”)
include()和require()的区别(面试题)
这两个函数除了在出错时处理方式不一样,其它方面都一样。
include()如果包含文件中存在错误代码,包含进来后,会输出一个“警告错误信息”,程序会继续向下运行。
Require()如果包含文件中存储错误代码,包含进来后,会输出一个“致命错误信息”,并终止程序继续向下运行。
6.URL编码函数
Urlencode():此字符串中除了 -_.之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的
urlencode(“非法用户”)的结果是“%E9%9D%9E%E6%B3%95%E7%94%A8%E6%88%B7”
urldecode():对使用urlencode()编码后的字符进行解码。
md5()对字符进行加密,返回一个32位的字符串,单向加密。
7.mysql_num_row($result):取出返回的字录数
相关推荐
- 得物可观测平台架构升级:基于GreptimeDB的全新监控体系实践
-
一、摘要在前端可观测分析场景中,需要实时观测并处理多地、多环境的运行情况,以保障Web应用和移动端的可用性与性能。传统方案往往依赖代理Agent→消息队列→流计算引擎→OLAP存储...
- warm-flow新春版:网关直连和流程图重构
-
本期主要解决了网关直连和流程图重构,可以自此之后可支持各种复杂的网关混合、多网关直连使用。-新增Ruoyi-Vue-Plus优秀开源集成案例更新日志[feat]导入、导出和保存等新增json格式支持...
- 扣子空间体验报告
-
在数字化时代,智能工具的应用正不断拓展到我们工作和生活的各个角落。从任务规划到项目执行,再到任务管理,作者深入探讨了这款工具在不同场景下的表现和潜力。通过具体的应用实例,文章展示了扣子空间如何帮助用户...
- spider-flow:开源的可视化方式定义爬虫方案
-
spider-flow简介spider-flow是一个爬虫平台,以可视化推拽方式定义爬取流程,无需代码即可实现一个爬虫服务。spider-flow特性支持css选择器、正则提取支持JSON/XML格式...
- solon-flow 你好世界!
-
solon-flow是一个基础级的流处理引擎(可用于业务规则、决策处理、计算编排、流程审批等......)。提供有“开放式”驱动定制支持,像jdbc有mysql或pgsql等驱动,可...
- 新一代开源爬虫平台:SpiderFlow
-
SpiderFlow:新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。-精选真开源,释放新价值。概览Spider-Flow是一个开源的、面向所有用户的Web端爬虫构建平台,它使用Ja...
- 通过 SQL 训练机器学习模型的引擎
-
关注薪资待遇的同学应该知道,机器学习相关的岗位工资普遍偏高啊。同时随着各种通用机器学习框架的出现,机器学习的门槛也在逐渐降低,训练一个简单的机器学习模型变得不那么难。但是不得不承认对于一些数据相关的工...
- 鼠须管输入法rime for Mac
-
鼠须管输入法forMac是一款十分新颖的跨平台输入法软件,全名是中州韵输入法引擎,鼠须管输入法mac版不仅仅是一个输入法,而是一个输入法算法框架。Rime的基础架构十分精良,一套算法支持了拼音、...
- Go语言 1.20 版本正式发布:新版详细介绍
-
Go1.20简介最新的Go版本1.20在Go1.19发布六个月后发布。它的大部分更改都在工具链、运行时和库的实现中。一如既往,该版本保持了Go1的兼容性承诺。我们期望几乎所...
- iOS 10平台SpriteKit新特性之Tile Maps(上)
-
简介苹果公司在WWDC2016大会上向人们展示了一大批新的好东西。其中之一就是SpriteKitTileEditor。这款工具易于上手,而且看起来速度特别快。在本教程中,你将了解关于TileE...
- 程序员简历例句—范例Java、Python、C++模板
-
个人简介通用简介:有良好的代码风格,通过添加注释提高代码可读性,注重代码质量,研读过XXX,XXX等多个开源项目源码从而学习增强代码的健壮性与扩展性。具备良好的代码编程习惯及文档编写能力,参与多个高...
- Telerik UI for iOS Q3 2015正式发布
-
近日,TelerikUIforiOS正式发布了Q32015。新版本新增对XCode7、Swift2.0和iOS9的支持,同时还新增了对数轴、不连续的日期时间轴等;改进TKDataPoin...
- ios使用ijkplayer+nginx进行视频直播
-
上两节,我们讲到使用nginx和ngixn的rtmp模块搭建直播的服务器,接着我们讲解了在Android使用ijkplayer来作为我们的视频直播播放器,整个过程中,需要注意的就是ijlplayer编...
- IOS技术分享|iOS快速生成开发文档(一)
-
前言对于开发人员而言,文档的作用不言而喻。文档不仅可以提高软件开发效率,还能便于以后的软件开发、使用和维护。本文主要讲述Objective-C快速生成开发文档工具appledoc。简介apple...
- macOS下配置VS Code C++开发环境
-
本文介绍在苹果macOS操作系统下,配置VisualStudioCode的C/C++开发环境的过程,本环境使用Clang/LLVM编译器和调试器。一、前置条件本文默认前置条件是,您的开发设备已...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- resize函数 (64)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- mybatis大于等于 (64)
- xcode-select (66)
- httperror403.14-forbidden (63)
- logstashinput (65)
- hadoop端口 (65)
- dockernetworkconnect (63)
- esxi7 (63)
- vue阻止冒泡 (67)
- c#for循环 (63)
- oracle时间戳转换日期 (64)
- jquery跨域 (68)
- php写入文件 (73)
- java大写转小写 (63)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)