PHP编程基础与实例教程第二版.ppt_第1页
PHP编程基础与实例教程第二版.ppt_第2页
PHP编程基础与实例教程第二版.ppt_第3页
PHP编程基础与实例教程第二版.ppt_第4页
PHP编程基础与实例教程第二版.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

PHP编程基础与实例教程第二版PHPFundamentals函数功能:通过PHP程序连接MySql数据库服务器。如果成功连接MySQL服务器,则返回一个MySQL服务器连接标识(link_identifier),否则返回FALSE。,9-1PHP中常用的MySQL操作函数,2.设置数据库字符集调用PHP函数mysql_query(setnamesgbk)可以将character_set_client、character_set_connection和character_set_results的字符集设置为gbk字符集。,9-1PHP中常用的MySQL操作函数,3.关闭MySQL服务器连接mysql_close()函数的语法格式如下:boolmysql_close(resourcelink_identifier)函数功能:mysql_close()函数关闭指定的连接标识所关联到的MySQL服务器的连接。如果没有指定link_identifier,则关闭上一个打开的连接。如果关闭成功则返回TRUE,失败则返回FALSE。,9-1PHP中常用的MySQL操作函数,4.选择当前操作的数据库使用函数mysql_select_db()可以设置当前操作的数据库,该函数的语法格式如下:boolmysql_select_db(stringdatabase_name,resourcelink_identifier)函数功能:如果没有指定MySQL服务器连接标识符,则使用上一个打开的MySQL服务器连接。如果没有打开的连接,本函数将无参数调用mysql_connect()函数尝试打开一个新的MySQL服务器连接然后使用它。如果选择当前操作的数据库成功则返回TRUE,否则返回FALSE。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令mysql_query()函数的语法格式如下:bool|resoucemysql_query(stringsql,resourcelink_identifier)函数功能:如果没有指定MySQL服务器连接标识link_identifier,则使用已打开的连接。然后向数据库引擎发送sql字符串(SQL语句或MySQL命令)。当发送的sql字符串执行失败时,mysql_query()函数返回FALSE;如果发送的sql字符串是insert语句、update语句或delete语句,并且sql字符串成功执行时,mysql_query()函数返回TRUE;如果发送的sql字符串是select语句,并且select语句成功执行时,mysql_query()函数返回结果集(result)类型的数据(实际是resource类型的数据)。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令mysql_affected_rows()函数使用PHP的mysql_query()函数向MySQL服务器引擎发送insert语句、update语句或delete语句后,可以使用mysql_affected_rows()函数查看该SQL语句影响到的表记录行数。mysql_affected_rows()函数的语法格式如下:intmysql_affected_rows(resourcelink_identifier)mysql_affected_rows()函数功能:取得最近一次与link_identifier关联的insert、update或delete语句所影响的记录行数。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令mysql_insert_id()函数使用PHP的mysql_query()函数发送insert语句向某个数据库表中添加记录时,若该数据库表中的某个字段为auto_increment自增字段,可以使用mysql_insert_id()函数得到当前insert语句执行后的该字段值。mysql_insert_id()函数的语法格式如下:intmysql_insert_id(resourcelink_identifier)mysql_insert_id()函数功能:mysql_insert_id()函数返回给定的link_identifier中上一条insert语句产生的auto_increment的ID号;如果没有指定link_identifier,则使用上一个打开的连接。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令mysql_num_rows()函数mysql_query()函数还可以向MySQL服务器引擎发送select语句,此时mysql_query()函数将返回一个结果集(result)数据,可以使用mysql_num_rows()函数查看该select语句查询到的表记录行数。mysql_num_rows()函数的语法格式如下:intmysql_num_rows(resourceresult)mysql_num_rows()函数功能:返回结果集result中记录的行数,该函数仅对select语句有效。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令结果集(result)使用过后,应该尽快地将其占用的服务器内存资源释放,可以使用函数mysql_free_result()实现,mysql_free_result()函数的语法格式如下:boolmysql_free_result(resourceresult)mysql_free_result()函数函数功能:释放结果集result占用的服务器内存资源。若执行成功,返回TRUE,否则返回FALSE。,9-1PHP中常用的MySQL操作函数,5.发送SQL语句或MySQL命令使用mysql_query()函数还可以向MySQL服务器引擎发送MySQL命令。例如PHP语句“mysql_query(setnamesgbk);”将character_set_client、character_set_connection和character_set_results的字符集设置为gbk。,9-1PHP中常用的MySQL操作函数,6.遍历结果集中的数据mysql_fetch_row()函数的语法格式:arraymysql_fetch_row(resourceresult)mysql_fetch_row()函数功能:从结果集result中取得下一行记录,并将该记录生成一个数组,数组的元素的键为从零开始的整数,数组元素的值依次为select语句中“字段列表”的值。若结果集result中没有下一行记录,则函数返回FALSE。,9-1PHP中常用的MySQL操作函数,6.遍历结果集中的数据mysql_fetch_array()函数的语法格式:arraymysql_fetch_array(resourceresult)mysql_fetch_array()函数功能:该函数是mysql_fetch_row()函数的扩展版本,该函数的返回值中除了包含mysql_fetch_row()函数的返回值,还包含select语句中“字段列表=字段列表值”的数组元素。,9-1PHP中常用的MySQL操作函数,7.MySQL服务器连接与关闭最佳时机,;mysql_free_result($resultSet);mysql_close($serverLink);student_query();student_query();?,;mysql_free_result($resultSet);$serverLink=mysql_connect(localhost,root,)ordie(连接服务器失败!程序中断执行!);mysql_query(setnamesgbk);$dbLink=mysql_select_db(student)ordie(选择当前数据库失败!程序中断执行!);student_query();student_query();mysql_close($serverLink);?,9-1PHP中常用的MySQL操作函数,8.MySQL服务器连接与关闭函数的制作,9-2PHP中其它MySQL操作函数,1.数据库表操作函数mysql_list_tables()函数mysql_tablename()函数,mysql_tablename($resultSet,$i);mysql_free_result($resultSet);mysql_close($server_link);?,9-2PHP中其它MySQL操作函数,2.选择当前操作的数据库并发送SQL语句mysql_db_query()函数,9-2PHP中其它MySQL操作函数,3.表字段操作函数mysql_num_fields()函数语法格式:intmysql_num_fields(resourceresult)函数功能:取得结果集result中字段的数目。mysql_field_name()函数语法格式:stringmysql_field_name(resourceresult,intfield_index)函数功能:取得结果集result中指定字段的字段名。说明:mysql_field_name()函数返回指定字段索引的字段名。field_index是该字段的数字偏移量,该偏移量从0开始。,9-2PHP中其它MySQL操作函数,3.表字段操作函数mysql_field_name()函数语法格式:stringmysql_field_name(resourceresult,intfield_index)函数功能:取得结果集result中指定字段的字段名。说明:mysql_field_name()函数返回指定字段索引的字段名。field_index是该字段的数字偏移量,该偏移量从0开始。,9-2PHP中其它MySQL操作函数,3.表字段操作函数mysql_field_type()函数语法格式:stringmysql_field_type(resourceresult,intfield_offset)函数功能:取得结果集result中指定字段的MySQL数据类型说明:mysql_field_type()返回指定字段的MySQL数据类型。field_offset是该字段的数字偏移量,该偏移量从0开始。mysql_field_len()函数语法格式:intmysql_field_len(resourceresult,intfield_offset)函数功能:返回结果集result中指定字段的长度。,9-2PHP中其它MySQL操作函数,3.表字段操作函数mysql_field_flags()函数语法格式:stringmysql_field_flags(resourceresult,intfield_offset)函数功能:从结果集result中取得和指定字段关联的标志。每个标记对应一个单词,之间用一个空格分开。这些标记有:not_null,primary_key,unique_key,multiple_key,blob,unsigned,zerofill,binary,enum,auto_increment,timestamp等。,9-2PHP中其它MySQL操作函数,4.其他常用函数mysql_fetch_lengths()函数语法格式:arraymysql_fetch_lengths(resourceresult)函数功能:返回结果集result中每个字段内容的长度。,9-2PHP中其它MySQL操作函数,4.其他常用函数mysql_result()函数语法格式:mixedmysql_result(resourceresult,introw,mixedfield)函数功能:返回结果集result中一个字段的字段值。,9-2PHP中其它MySQL操作函数,4.其他常用函数mysql_errno()函数语法格式:intmysql_errno(resourcelink_identifier)函数功能:返回MySQL数据库服务器的错误代码,如果没有出错则返回0(零)。说明:mysql_errno()函数仅返回最近一次MySQL函数的错误代码,因此应该尽早地调用该函数。,9-2PHP中其它MySQL操作函数,4.其他常用函数mysql_error()函数语法格式:stringmysql_error(resourcelink_identifier)函数功能:返回MySQL数据库服务器产生的错误文本信息,如果没有出错则返回”空字符串)。说明:mysql_error()函数仅返回最近一次MySQL函数的错误文本信息,因此应该尽早地调用该函数。,9-3用户注册系统的实现,1.用户注册系统文件组织结构2.用户注册界面的实现3.数据库的实现4.制作用户注册系统所需的函数5.用户注册功能的实现6.用户登录页面的实现7.用户登录功能的简单实现8.功能测试,9-4SQL注入,当配置文件php.ini中的magic_quotes_gpc选项设置为关闭时(magic_quotes_gpc=Off),使用用户名“or=”和密码“or=”登录系统时,系统永远可以登录成功。这样一些非法用户就可以乘虚而入,成功登陆系统,这就是SQL注入(SQLInjection)。SQL注入产生的原因是由于某些特殊字符打乱了SQL语句本身的逻辑,使数据库服务器引擎错误的执行了某些SQL语句。,9-4SQL注入,MySQL数据库引擎不会自动过滤特殊字符,因此防止SQL注入发生的方法是:在PHP程序中过滤特

温馨提示

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

评论

0/150

提交评论