一. web数据库构架的工作原理

  1. 用户由浏览器发出HTTP请求,请求特定的web页面。

  2. web服务器接受接收到对特定页面的请求,检索相应文件,并将其传递给php引擎处理。

  3. php引擎开始解析脚本,脚本主要包括,连接到数据库和执行查询命令

  4. mysql数据库接收到对数据库查询的请求,处理请求,并将查询结果返回给php引擎。

  5. php引擎完成脚本运行后,将结果返回给web服务器

  6. web服务器将结果返回给客户端浏览器,并将结果展现给用户。

二. web查询数据库的基本步骤

  1. 检查并过滤来自用户的数据

  2. 建立一个到数据库的连接

  3. 查询数据库

  4. 获取查询结果

  5. 将结果显示给用户

三 具体操作

  1. 连接数据库

    php为mysql提供了函数库,这个函数库是mysqli。

    $db =new  mysqli('host','db_name','username','pwd');

    该连接返回一个资源,而不是一个对象。

  2. 数据库连接检查

    if(mysqli_connect_errno()){echo"error";exit;}

  3. 选择数据库

    mysqli_select_db('db_name');

  4. 查询数据库

    $query = "select * from table_name";

    $result = $db->query($query);   //或者mysqli_query($query);

  5. 检索查询结果

    返回的结果保存在num_rows中,表示查询结果的行数。

    $num_rows = $result->num_rows;

    获取查询每一行,并存储到数组中(按数据表或多个字段查询)

      $row = $resullt->fetch_assoc();该函数接受集合中每个关键词代表一个属性名,每个之为数组中相应的值。

      echo $row['name'] 获取数组中的属性name对应的值

    获取查询结果每一行,存储到对象中 (按数据表或多个字段查询) 

      $row = $result->fetch_object();此时访问每个属性echo $row->name;

    若查询条件为查询某个字段,则可以将查询结果保存到列举数组(一维数组)中。

      $row = $result->fetch_row($result);此时可通过$row[0],$row[1],$row[2]访问查询结果。

  6. 从数据库断开连接

    1. 释放数据

      $result->free();

    2. 关闭数据库

      $db->close();

    

使用PHP从web访问mysql数据库的更多相关文章

  1. 第11章 使用PHP从Web访问MySQL数据库

    1.过滤用户可能值其搜索条件的起始或结束位置不小心输入的空白字符: 应用trim(): 2.转义数据(第4章)函数:addslashes(),stripslashes(),get_magic_quot ...

  2. 对C#中的web访问mysql数据库的一些知识点进行了整理归纳总结

    基本对比 使用方式 使用场合 优缺点 是否需要安装 需要的dll网址 引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置 ...

  3. C# web访问mysql数据库-整理归纳总结

    基本对比 使用方式 使用场合 优缺点 是否需要安装 需要的dll网址 引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置 ...

  4. android开发 如何通过web服务器访问MYSQL数据库并且使其数据同步到android SQLite数据库?

    通过web服务器访问MYSQL数据库有以下几个过程: 1.在MySql下创建自己的数据库和自己的表单 2.连接数据库. 3.访问数据库 1.创建web工程 (服务器端) 在Myeclipse下新建一个 ...

  5. 基于gin的golang web开发:访问mysql数据库

    web开发基本都离不开访问数据库,在Gin中使用mysql数据库需要依赖mysql的驱动.直接使用驱动提供的API就要写很多样板代码.你可以找到很多扩展包这里介绍的是jmoiron/sqlx.另外还有 ...

  6. C#连接、访问MySQL数据库

    一.准备工具 visual stuido(本示例使用visual studio 2010) MySql.Data.dll mysql_installer_community_V5.6.21.1_set ...

  7. Spring Boot入门(六):使用MyBatis访问MySql数据库(注解方式)

    本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 本篇博客我们讲解下在Spring Boot中使用MyBatis访问MySql数据库的简单用法. 1.前期 ...

  8. Linux下C++访问MySQL数据库

    由于想要开始了解并学习用LAMP进行web开发,所以昨晚我在Fedora上安装了MySQL,学习了MySQL的几个常用命令.想着在学习进行web开发(PHP访问数据库)之前,先用我熟悉的C++连接数据 ...

  9. 关于.Net使用企业库访问MySql数据库

    关于.Net使用企业库访问MySql数据库 在网上看了很多又重写又加WebConfig中的内容,其实不用那么麻烦 企业库5.0访问MySql数据库只需要在Web服务器安装mysql-connector ...

随机推荐

  1. poj2505-A multplication game

    题意:两个人轮流用2~9来乘n,使n不断扩大,n开始为1.当给一个固定值k,谁先使n超过k谁赢. 分析:能到达必败态的状态为必胜态,只能到达必胜态的状态为必败态.对于给定的k,n>=k时为必败态 ...

  2. LeetCode_N-Queens

    The n-queens puzzle is the problem of placing n queens on an n�n chessboard such that no two queens ...

  3. format %x invalid or incompatible with argument问题解决方法

    现在还有好多朋友在用Protel 99se来画图,可是在现在的双核或四核电脑上运行Protel出现错误并且弹出对话框:“format '%x' invalid or incompatible with ...

  4. Qt HTTP请求同步调用

    在Qt中,进行HTTP就行现在官方提倡使用QNetworkAccessManager,其和QNetworkRequest和QNetworkReply配合使用,来完成,其是只支持异步的操作.最近使用QM ...

  5. 一条执行4秒的sql语句导致的系统问题 (转)

    为了一看究竟,抓取了一个awr报告.发现系统的负载情况确实很严重,每秒的redo有1.6M,可见系统的负载不是主要在select上,可能有一些dml之类的操作极为频繁. 看了下等待事件.都是关于loc ...

  6. unix c 01

    gcc编译器(代码的 预处理/汇编/编译/连接) C程序员一般写程序会定义 .c和.h两种文件 .c文件(源文件)中一般放代码的实现,.h文件(头文件)中放 各种声明和定义.   gcc -E __. ...

  7. 2013成都网赛 G(x) (HDU 4733)

    G(x) 思路: 首先搞清楚每个位置上的值有什么意义, 如果第i位的值为1则 第i位与第i+1位不同,反之相同. 然后考虑s1和s2为什么会不一样, 这是由于x+1后比特位进位导致的,于是得出一个性质 ...

  8. Openstack no valid hot

    错误: 创建实例 "ce" 失败: 请稍后再试 [错误: No valid host was found. ].

  9. goahead webserver源码分析

    1.一个txt文本架构图 main() | |--websOpenServer() |             |-- websOpenListen() |                       ...

  10. poj 1759 Garland (二分搜索之其他)

    Description The New Year garland consists of N lamps attached to a common wire that hangs down on th ...