实例讲解php数据访问


Posted in PHP onMay 09, 2016

本文实例为大家分享了两种php数据访问方式,大家可以进行比较,分析两种方式的异同,最后为大家提供了一个小练习,具体内容如下

方式一:已过时,只做了解

1.造一个连接(建立通道)

$db=mysql_connect("localhost","root","123");     //括号内是“服务器地址”,“用户名”,“密码”

2.选择操作哪个数据库

mysql_select_db("mydb","$db");

3.写sql语句

$sql="select * from Info";

4.执行sql语句

$result=mysql_query($sql);      //query 有查询之意

5.从结果集($result)中取数据

$row=mysql_fetch_row($result);  //每执行一次读取一行数据

$row1=mysql_fentch_row($result);  //执行第二条数据

var_dump($row);

//读取全部数据用循环:

while($row=mysql_fetch_row($result))

{

var_dump($row);

}

方法二:面向对象

1.造一个连接对象:

$db=new MySQLi("localhost","root","123","mydb")  //括号内的内容依次为“服务器地址”,“用户名”,“密码”,“数据库名称”

2.判断连接是否出错:

2.1 mysqli_connect_error();  //代表连接出错

2.2

if(mysqli_connect_erroe())

       {

echo "连接失败!";

exit();  //退出程序

        }

  2.3 !mysqli_connect_error or die ("连接失败!"); //“or”前面代表连接正确,后面代表连接失败

3. 写sql语句:

$sql="select * from nation";

4. 执行sql语句:如果执行成功返回结果集对象,如果执行失败返回false

$result=$db->query($sql);

5.从结果集中读取数据,先判断是否有数据

if($result)

{

//返回一行数据的索引数组,每次执行返回一条数据

 var_dump($result->fetch_row()); 

while($row=$result->fetch_row)

{

var_dump($row);

}

//返回一行数据的关联数组,每次执行返回一条数据

var_dump($result->fetch_row()); 

//通过二维数组返回所有数据

var_dump($result->fetch_all());

//以对象的方式返回一行数据

var_dump($result->fetch_object());

}

练习:

1.以下拉菜单的形式在页面显示nation表

$db=new MySQLi("localhost","root","","mydb");

!mysqli_connection_erroe() or die ("连接失败!");

$sql="select*from nation";

$result=$db->query($sql);

if($result)

{

$att=$result->fetch_all();

echo "<select>";

foreach ($att as $value)

{

echo "<option value='{$value[0]}'>{$value[1]}</option>";

}

echo "</select>";

}


 

实例讲解php数据访问 

2. 把Info表查出来,以表格的形式显示

$db=new MySQLi("localhost","root","","mydb");

!mysqli_connecton_error() or die("连接失败!");

$sql="select * from info";

$result=$bd->query($sql);

if($result)

{

$att=$result->fetch_all();

echo "<table border='1' width='100%' cellpadding='0' cellspacing='0'>";

echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td><td>生日</td></tr>";

foreach ($att as $value)

{

 echo "<tr>

<td>{$value[0]}</td>

<td>{$value[1]}</td>

<td>{$value[2]}</td>

<td>{$value[3]}</td>

<td>{$value[4]}</td>

</tr>";

}

echo "</table>";

}

 

//也可以用for循环

if($result)
{
$arr=$result->fetch_all();
echo "<table border='1' width='100%' cellpadding='0' cellspacing='0'>";
echo "<tr><td>Code</td><td>Name</td><td>Sex</td><td>Nation</td><td>Birthday</td></tr>";
for($i=0;$i<count($arr);$i++)
{
echo "<tr>
<td>{$arr[$i][0]}</td>
<td>{$arr[$i][1]}</td>
<td>{$arr[$i][2]}</td>
<td>{$arr[$i][3]}</td>
<td>{$arr[$i][4]}</td> 
</tr>";
}
echo "</table>";
}

实例讲解php数据访问

以上就是本文的全部内容,希望对大家学习php程序设计有所帮助。

PHP 相关文章推荐
php 分页原理详解
Aug 21 PHP
php 静态变量与自定义常量的使用方法
Jan 26 PHP
php中使用Akismet防止垃圾评论的代码
Jun 10 PHP
php简单的会话类代码
Aug 08 PHP
Yii2.0高级框架数据库增删改查的一些操作
Nov 16 PHP
php模板引擎技术简单实现
Mar 15 PHP
Yii列表定义与使用分页方法小结(3种方法)
Jul 15 PHP
php使用GD2绘制几何图形示例
Feb 15 PHP
PHP命名空间简单用法示例
Dec 28 PHP
解决PHP使用CURL发送GET请求时传递参数的问题
Oct 11 PHP
thinkphp5 框架结合plupload实现图片批量上传功能示例
Apr 04 PHP
PHP连接SQL server数据库测试脚本运行实例
Aug 24 PHP
php查询操作实现投票功能
May 09 #PHP
解决yii2左侧菜单子级无法高亮问题的方法
May 08 #PHP
php面向对象编程self和static的区别
May 08 #PHP
Laravel与CI框架中截取字符串函数
May 08 #PHP
PHP框架性能测试报告
May 08 #PHP
Thinkphp单字母函数使用指南
May 08 #PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
May 07 #PHP
You might like
php 无法加载mcrypt.dll的解决办法
2013/04/03 PHP
php分页示例分享
2014/04/30 PHP
PHP中加密解密函数与DES加密解密实例
2014/10/17 PHP
php中instanceof 与 is_a()区别分析
2015/03/03 PHP
PHP多线程编程之管道通信实例分析
2015/03/07 PHP
PHP 设计模式系列之 specification规格模式
2016/01/10 PHP
javascript 异常处理使用总结
2009/06/21 Javascript
javascript 从if else 到 switch case 再到抽象
2010/07/17 Javascript
JS高级调试技巧:捕获和分析 JavaScript Error详解
2014/03/16 Javascript
JS实现双击屏幕滚动效果代码
2015/10/28 Javascript
Vue.js每天必学之组件与组件间的通信
2016/09/08 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
利用CSS、JavaScript及Ajax实现图片预加载的三大方法
2017/01/22 Javascript
VUE 更好的 ajax 上传处理 axios.js实现代码
2017/05/10 Javascript
jQuery.form.js的使用详解
2017/06/14 jQuery
关于JavaScript语句后面的分号问题
2017/12/07 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
JavaScript引用类型Object常见用法实例分析
2018/08/08 Javascript
AngularJS实现与后台服务器进行交互的示例讲解
2018/08/13 Javascript
vue数据初始化initState的实例详解
2019/04/11 Javascript
Vue匿名插槽与作用域插槽的合并和覆盖行为
2019/04/22 Javascript
解决vue-router 二级导航默认选中某一选项的问题
2019/11/01 Javascript
[04:11]DOTA2亚洲邀请赛小组赛第一日 TOP10精彩集锦
2015/01/30 DOTA
Python基于lxml模块解析html获取页面内所有叶子节点xpath路径功能示例
2018/05/16 Python
python 自定义对象的打印方法
2019/01/12 Python
pyftplib中文乱码问题解决方案
2020/01/11 Python
html5指南-6.如何创建离线web应用程序实现离线访问
2013/01/07 HTML / CSS
试解释COMMIT操作和ROLLBACK操作的语义
2014/07/25 面试题
人力资源专员自我评价怎么写
2013/09/19 职场文书
网络管理员岗位职责
2014/03/17 职场文书
法制报告会主持词
2014/04/02 职场文书
交通安全责任书范本
2014/07/24 职场文书
基层领导干部“四风”问题批评与自我批评
2014/09/23 职场文书
nginx简单配置多个server的方法
2021/03/31 Servers
Pytest allure 命令行参数的使用
2021/04/18 Python
Spring Boot优化后启动速度快到飞起技巧示例
2022/07/23 Java/Android