PHP网站开发PHPPHP操作MySQL数据库_第1页
PHP网站开发PHPPHP操作MySQL数据库_第2页
PHP网站开发PHPPHP操作MySQL数据库_第3页
PHP网站开发PHPPHP操作MySQL数据库_第4页
PHP网站开发PHPPHP操作MySQL数据库_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务五163邮箱注册功能实现简单注册功能实现使用图片验证码(图片验证码地创建,插入,刷新与验证过程)操作mysql数据库(创建数据库与数据表,数据库地导入与导出,PHP文件访问MySQL数据库)使用数据库保存注册信息5.3PHP操作MySQL数据库在PHP访问数据库时,通常需要完成如下这些操作:连接数据库,打开数据库,设计SQL语句,对数据表进行增删查改等操作,执行设计地SQL语句,若是完成地是查询操作,还需要判断查询结果是否存在,以确定接下来需要做哪些工作,整个数据库操作完成之后需要关闭数据库。需要掌握地函数1.连接MyQL数据库地方法mysqli_connect()地应用2.选择打开自己创建数据库地方法mysqli_select_db()地应用3.执行SQL语句地方法mysqli_query()地应用4.获取查询结果记录集记录数地方法mysqli_num_rows()地应用5.关闭数据库地方法mysqli_close()地应用5.3.1mysqli_connect()及有关函数在PHP程序操作MySQL数据库地数据,首要操作就是连接到数据库服务器,也就是建立一条PHP程序到MySQL数据库之间地通道,完成该功能需要使用mysqli_connect()函数。函数地返回值该函数在应用之后会返回一个代表到MySQL服务器地连接地对象。函数格式:mysqli_connect(host,username,password,dbname,port,socket)mysqli_connect()函数地参数六个参数说明如下:host,可选,规定数据库服务器名称或IP地址;username,可选,规定MySQL用户名;password,可选,规定MySQL密码;dbname,可选,规定默认使用地数据库;port,可选,规定尝试连接到MySQL服务器地端口号;socket,可选,规定socket或要使用地已命名pipe。数据库连接后地有关函数连接成功可以使用函数mysqli_get_server_info(connection)获取MySQL服务器版本信息可以使用函数mysqli_get_host_info(connection)返回MySQL服务器主机名与连接类型。连接失败可以使用函数mysqli_connect_errno()获取错误编号可以使用函数mysqli_connect_error()获取错误信息。示例5-1创建mysql.php文件,编写代码连接MySQL数据库,同时打开phpStudyMySQL系统自带地数据库"mysql",若是操作成功则输出"数据库连接成功",同时输出服务器主机名称与连接类型以及MySQL服务器版本信息,否则输出"数据库连接失败,错误编号是:xxx,错误信息是:xxx"。代码如下die()函数有两个功能:先输出内容,然后退出程序。(常用在连接服务器与数据库上)服务器连接成功问题说明-1若是将第一个参数localhost改成错误地写法,例如改为"localhst",运行效果如图所示。问题说明-2若是将用户名参数root改成错误地写法,例如改为"rot",运行效果如图所示。问题说明-3若是将第三个参数密码root改成错误地密码,例如改为rot,运行效果如图所示。问题说明-4若是将第四个参数数据库名称改成不存在地库名,例如改成test,则会提示"不知道地数据库test",运行效果如图所示。5.3.2mysqli_select_db()函数该函数地功能可以理解为两种形式:选择打开指定地数据库与更改已经选择地数据库。在建立MySQL数据库连接时,若是mysqli_connect()函数没有指定要访问地数据库名称,在连接成功之后,需要使用函数mysqli_select_db()选择并打开要操作地数据库,之后才能对这个库地数据表进行增删查改等各种操作;若是在建立MySQL连接时指定了要访问地数据库,则可以使用函数mysqli_select_db()更改所指定地数据库。mysqli_select_db()函数该函数需要使用两个参数,格式如下:mysqli_select_db(connection,dbname)。参数说明:参数connection,必需,规定要使用地MySQL连接;参数dbname,必需,表示要打开地数据库。该函数使用之后,返回一个布尔值,若是打开数据库成功则返回true,否则返回false。mysqli_select_db()函数举例修改mysql.php文件,连接数据库成功之后,直接选择打开指定地数据库email-1,若打开成功则输出"打开数据库email-1成功",否则输出"打开数据库email-1失败"。5.3.3mysqli_query()函数连接MySQL成功之后,需要完成地操作通常包含如下几个方面:第一,创建一个MySQL数据库;第二,创建一个MySQL数据表;第三,定义访问数据表地增删查改操作语句,并执行。完成其任何一种操作,都需要定义并执行SQL语句,要执行这些SQL语句,需要使用mysqli_query()函数,该函数通常需要使用两个参数,格式如下:mysqli_query(connection,SQL)。mysqli_query()函数mysqli_query(connection,SQL)参数说明:参数connection,必需,规定要使用地MySQL连接;参数SQL,必需,表示定义地SQL语句。该函数地返回结果说明:若操作失败,则返回false;若是成功执行SELECT,SHOW,DESCRIBE或EXPLAIN查询,则会返回一个mysqli_result对象,即查询结果记录集;若成功执行其它操作,则返回真值true。应用mysqli_query()函数1.创建数据库email创建数据表创建数据表usermsg,结构如图所示这里地邮件地址,密码与手机号为什么都使用varchar类型,而不使用char类型?应用mysqli_query()函数例5-4创建create_usermsg.php文件,在连接MySQL成功并打开数据库email之后,定义SQL语句,创建数据表usermsg,若是创建成功,则输出"数据表usermsg创建成功",否则输出"数据表usermsg创建失败"。3.向数据表usermsg插入一条记录例5-5创建文件insert_usermsg.php,在连接打开数据库email之后,定义插入语句向数据表usermsg插入一条记录,四个字段列值分别为"zhangpeipei","peipei11",,"2018-04-0910:04"。5.3.4mysqli_num_rows()函数函数作用:对数据表进行查询操作之后,通常需要获取查询结果记录集地记录数,用于判断查询结果是否存在,或者用于控制输出查询结果记录地次数,获取查询结果集地记录数需要使用mysql_num_rows()函数格式:mysqli_num_rows(resultset)

参数resultset表示查询结果记录集。mysqli_num_rows()举例例5-6创建get_rows_usermsg.php文件,连接MySQL并打开数据库email之后,设计查询语句,查询数据表usermsg地全部记录,并输出记录个数。5.3.5mysqli_real_escape_string()函数应用该函数地目地是为了防止SQL注入。SQL注入是黑客对数据库进行地常用手段之一。在编写代码地时候,如果没有对用户输入数据地合法性进行判断,使得应用程序存在安全隐患,这种情况下,恶意用户可以提交一段数据库查询代码,根据程序返回地结果,获得某些它想恶意获取地数据,这就是所谓地SQL注入。5.3.5mysqli_real_escape_string()函数例如,邮箱登录时进行身份验证地SQL语句如下:

$sql="select*fromusermsgwhere(emailaddr='$emailaddr')and(psd='$psd')"若用户恶意填写地邮件地址如下:

$emailaddr="'OR''='";恶意填写地密码信息如下:

$psd="'OR''='";此时得到地SQL语句如下:

$sql="select*fromusermsgwhere(emailaddr=''OR''='')and(psd=''OR''='')"此时查询条件是成立地,这意味着任何用户都无需输入合法地账号与密码即可登录。5.3.5mysqli_real_escape_string()函数在PHP可以通过函数mysqli_real_escape_string()有效防止注入,做法是将SQL语句地特殊字符进行转义,转义时受影响地字符包括:\x00,\n,\r,\,',",\x1a。函数格式:mysqli_real_escape_string(connection,string)。参数说明:参数connection,必需,规定要使用地MySQL连接;参数string,必需,规定要转义地字符串。使用函数mysqli_real_escape_string("'OR''='")转义字符串之后地结果为"\'OR\'\'=\'",此时得到地查询条件where(email

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论