mysqlitest.php

<?php
//调用数据库的函数
function connetionsql(){
$conn=mysqli_connect("127.0.0.1",'root','','user');
if (!$conn) {
die("连接失败".mysqli_error());
}
mysqli_set_charset($conn,"utf8");
$sql="select * from user1";
$res=mysqli_query($conn,$sql);
// mysqli_affected_rows()返回前一次 MySQL 操作所影响的记录行数。
// $row=mysqli_affected_rows($conn);
// mysqli_num_fields() 返回结果集中字段的数量。
$col=mysqli_num_fields($res);
echo "<table border='1'><tr>";
// 取出字段名作为表名
for ($i=0; $i <$col ; $i++) {
// mysqli_fetch_field_direct() 从结果集中取得某个单一字段的 meta-data,并作为对象返回。
$file_name=mysqli_fetch_field_direct($res,$i);
// echo $file_name->name;
echo "<th>$file_name->name</th>";
}
echo "</tr>";
// mysqli_fetch_row() 从结果集中取得一行,并作为枚举数组返回。
while ($row=mysqli_fetch_row($res)) {
echo "<tr>";
for ($i=0; $i <$col ; $i++) {
echo "<td>$row[$i]</td>";
}
echo "</tr>";
}
echo "</table>";
}
connetionsql();
?>

实现结果:

解析后的html源码:

<table border='1'>
<tr>
<th>id</th><th>name</th><th>password</th><th>email</th><th>age</th>
</tr>
<tr>
<td>4</td><td>huahua</td><td>e10adc3949ba59abbe56e057f20f883e</td><td>huahua@qq.com</td><td>16</td>
</tr>
<tr>
<td>32</td><td>haha</td><td>e10adc3949ba59abbe56e057f20f883e</td><td>test@qq.com</td><td>16</td>
</tr>
<tr>
<td>28</td><td>test</td><td>e10adc3949ba59abbe56e057f20f883e</td><td>test@qq.com</td><td>16</td>
</tr>
<tr>
<td>31</td><td>嘿嘿</td><td>e10adc3949ba59abbe56e057f20f883e</td><td>test@qq.com</td><td>16</td>
</tr>
</table>

下面是在过程中熟悉的mysqli函数:

mysqli_fetch_fields()

        // mysqli_fetch_fields()    返回结果中代表字段的对象的数组。
$field_info=mysqli_fetch_fields($res);
var_dump($field_info);
//返回的是一个二位数组,如下:
// array(5) {
// [0]=> object(stdClass)#3 (13)
// { ["name"]=> string(2) "id"
// ["orgname"]=> string(2) "id"
// ["table"]=> string(5) "user1"
// ["orgtable"]=> string(5) "user1"
// ["def"]=> string(0) ""
// ["db"]=> string(4) "user"
// ["catalog"]=> string(3) "def"
// ["max_length"]=> int(2)
// ["length"]=> int(11)
// ["charsetnr"]=> int(63)
// ["flags"]=> int(49667)
// ["type"]=> int(3)
// ["decimals"]=> int(0)
// }
foreach ($field_info as $key =>$value) {
// echo "<br/>".$val->name;
echo "<br/>.-----";
echo $key;
echo "=========";
echo $value->name;
}

结果:

//数字为下标
.-----0=========id
.-----1=========name
.-----2=========password
.-----3=========email
.-----4=========age

mysqli_fetch_field()

        // mysqli_fetch_field() 函数从结果集中取得下一字段(列),并作为对象返回。
while ($field_info=mysqli_fetch_field($res)) {
echo "<br/>".$field_info->name;
}

结果:

id
name
password
email
age

【二十一】基于mysqli的表格数据练习的更多相关文章

  1. 基于bootstrap的表格数据展示

    一.导入bootstrap文件 二.前端html代码 对应的是前台条件查询和js数据获取 js数据获取部分在第四段 三.后台数据 total为集合总数  int类型 rows为前台需要展示的数据集合 ...

  2. JavaWeb学习 (二十一)————基于Servlet+JSP+JavaBean开发模式的用户登录注册

    一.Servlet+JSP+JavaBean开发模式(MVC)介绍 Servlet+JSP+JavaBean模式(MVC)适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp ...

  3. 学习Spring Boot:(二十一)使用 EhCache 实现数据缓存

    前言 当多次查询数据库影响到系统性能的时候,可以考虑使用缓存,来解决数据访问新能的问题. SpringBoot 已经为我们提供了自动配置多个 CacheManager 的实现,只要去实现使用它就可以了 ...

  4. 用Vue来实现音乐播放器(二十一):歌手详情数据抓取

    第一步:在api文件夹下的singer.js中抛出getSingerDetail方法 第二步:在singer-detail.vue组件中引入api文件夹下的singer.js和config.js 第三 ...

  5. 云计算设计模式(二十一)——Sharding分片模式

    云计算设计模式(二十一)——Sharding分片模式 将一个数据存储到一组水平分区或碎片.存储和访问大量数据时,这个模式可以提高可扩展性. 背景和问题 由一个单一的服务器托管的数据存储区可能会受到以下 ...

  6. 获取表格数据转换为JSON字符串

    核心代码JavaScript代码: 方法一 function sc () { var myTable=document.getElementById("myTable"); //获 ...

  7. 二十一、contextMap中放的常用数据

    二十一.contextMap中放的常用数据 request:请求范围的数据.即ServletRequest中的那个Map parameters:请求参数的数据.即request.getParamete ...

  8. 从壹开始微服务 [ DDD ] 之十一 ║ 基于源码分析,命令分发的过程(二)

    缘起 哈喽小伙伴周三好,老张又来啦,DDD领域驱动设计的第二个D也快说完了,下一个系列我也在考虑之中,是 Id4 还是 Dockers 还没有想好,甚至昨天我还想,下一步是不是可以写一个简单的Angu ...

  9. FreeSql (二十一)查询返回数据

    FreeSql 采用 ExpressionTree 优化读取速读,如果懂技术的你一定知道 .NETCore 技术下除了原生代码,最快就是 Emit 和 ExpressionTree. 项目在初期使用的 ...

随机推荐

  1. Android OOM异常解决方案

    一,什么是OOM异常: OOM(out of Memory)即内存溢出异常,也就是说内存占有量超过了VM所分配的最大,导致应用程序异常终止: 二,为什么会产生OOM异常呢? OOM异常是Android ...

  2. 从cdn说起

    为什么要使用cdn 雅虎军规有一条规则建议我们是用cdn.随便在网上搜索,可以找到使用的cdn的好处. 再次强调第一条黄金定律,减少网页内容的下载时间.提高下载速度还可以通过CDN(内容分发网络)来提 ...

  3. 一篇不错的Gibbs Sampling解释文章,通俗易懂

    http://cos.name/2013/01/lda-math-mcmc-and-gibbs-sampling/  直接原文的链接了.原文写的不错,是中文博客中说的比较明白的了. 但为了保留文章,随 ...

  4. re部分

    0x01.Writeup-RE-CM_2 题目: 解题思路: 1.这个是经过xor的,王老师提示说用xortool,于是放进kali,装好之后执行 xortool CM_2.exe -b, 0.out ...

  5. css3实现聊天气泡

    1: <div class="comment"></div><style type="text/css"> .comment ...

  6. RFID电动车管理,智慧城市物联网建设的入口

    原谷歌CEO施密特说:"我可以非常直接地说,互联网将消失." 互联网在20多年来帮助人们解决了信息共享.交互,几乎在瞬间颠覆了很多传统的商业模式,把卖产品变为卖内容和服务,是个了不 ...

  7. sublime3配置php环境

    最后的演示效果: 1. 按照sublime3开始前的准备工作 Ctrl+Shift+P,再输入install ,最后再输入想要安装的软件 (输入install会有几十秒的延迟,请不要重复操作) 配置p ...

  8. DC 辅域转主域

    DC 辅域转主域 #dc2辅域 角色转移为主域 #查看 netdom query fsmo ntdsutil roles connections #连接主机dc2 connect to server ...

  9. NIO相关基础篇一

    转载请注明原创出处,谢谢! 说在前面 NIO相关知识是很多后续的一些基础知识,所以今天这篇文章仅仅是简单介绍,后续会继续有一到二篇相关NIO内容. 什么是NIO Java NIO( New IO) 是 ...

  10. 实践作业2:黑盒测试实践——搭建被测web系统Day 4

    1.选择合适的待测web系统 2.安装web系统运行所需工具,配置运行环境 3.成功运行web系统 4.尝试Katalon测试系统