PHP:处理数据库查询数据

注:

DB_num_rows(result5)可以替换为mysqli_num_rows(result5)

DB_fetch_array(result5)可以替换为mysqli_fetch_assoc(result5)

一、查询单个数据

代码解析

1、SQL语句

查询表www_users中当userid等于变量$_SESSION'UserID'时的depart_code值

php 复制代码
$sql = "
		select  depart_code
		from www_users
		where userid = '" . $_SESSION['UserID'] . "'
";

2、 运行SQL

执行了一个数据库查询并返回查询结果。

在这个函数中,$sql 是包含 SQL 查询语句的字符串,$db 是数据库连接对象或者与数据库相关的参数。具体的函数实现可能会根据你的代码库或框架而有所不同。

php 复制代码
$result = DB_query($sql, $db);

3、处理数据库查询的结果集,一行一行处理

从查询结果中获取一行数据,并以关联数组的形式返回。

在这个函数中,$result 是数据库查询的结果集。具体的函数实现可能会根据你的代码库或框架而有所不同。

php 复制代码
$row = DB_fetch_array($result)

4、处理单个数据

在 PHP 中使用数据库查询获取单个值时,通常也需要通过查询数组的方式来获取。即使只需要一个单独的值,你仍然需要执行查询并将结果保存到变量中,然后使用适当的函数从结果中提取所需的值。

php 复制代码
$departCode = $row['depart_code'];

完整代码

php 复制代码
$sql = "
		select  depart_code
		from www_users
		where userid = '" . $_SESSION['UserID'] . "'
	";
$result = DB_query($sql, $db);
if ($row = DB_fetch_array($result)) {
	$departCode = $row['depart_code'];
	echo "<script>alert('" . $departCode . "')</script>";
} else {
	prnMsg(_('找不到相应数据!'), 'error');
}

二、查询多行数据并展示到表格

效果

代码解析

1、SQL语句

php 复制代码
$sql5 = "
	select  *
	from www_users
";
$sql5 .= " order by depart_code desc";

2、运行SQL

php 复制代码
$result5 = DB_query($sql5, $db);

3、判断查询结构是否存在

DB_num_rows($result5)返回查询结果集中的行数。如果行数小于等于0那么表示没有数据,反之则有

php 复制代码
DB_num_rows($result5) > 0

4、html写入表格,对SQL查询的数据进行循环

  • row = DB_fetch_array(result5):给变量row赋值为DB_fetch_array(result5)的值
  • DB_fetch_array($result5):处理数据库查询的结果集,一行一行处理
  • $row'depart_code':每行都输出一个depart_code的数据
php 复制代码
<?php
while ($row = DB_fetch_array($result5)) {
?>
    <tr>
        <td><?php echo $row['userid']; ?></td>
        <td><?php echo $row['depart_code']; ?></td>
    </tr>
<?php
}
?>

完整代码

html 复制代码
<?php
$sql5 = "
	select  *
	from www_users
";
$sql5 .= " order by depart_code desc";
$result5 = DB_query($sql5, $db);
//检查查询结构是否为空
if (DB_num_rows($result5) > 0) {
?>
        <style>
                table {
                        border-collapse: collapse;
                }

                td {
                        text-align: center;
                }
        </style>
        <table border="1">
                <tr>
                        <th>userid</th>
                        <th>depart_code</th>
                </tr>
                <?php
                while ($row = DB_fetch_array($result5)) {
                ?>
                        <tr>
                                <td><?php echo $row['userid']; ?></td>
                                <td><?php echo $row['depart_code']; ?></td>
                        </tr>
        <?php
                }
        }
        ?>
        </table>
相关推荐
广州灵眸科技有限公司19 分钟前
xfce桌面触摸校准:基于灵眸科技EASY-EAl-Orin-Nano
数据库·windows·科技
Cloud云卷云舒3 小时前
云卷云舒:从Oracle/MySQL迁移到HaishanDB:迁移评估工具核心技术拆解
mysql·oracle·ai-native·haishandb·信创数据库替换
憧憬成为web高手3 小时前
皮卡丘靶场速通--sql 2
数据库·sql·mybatis
段一凡-华北理工大学3 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
oradh5 小时前
Oracle XTTS实现跨版本迁移和升级(Oracle 11g单库升级至19C RAC集群)
数据库·oracle·11g升级19c·xtts跨版本迁移和升级
z123456789866 小时前
2026最新两款AI编程工具深度对比实测
java·数据库·ai编程
程序猿DD6 小时前
一个 API Key,统一调用大模型、生图和联网搜索
数据库·网关
java_logo6 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
TlSfoward7 小时前
抓包代理链路下的 TLS 指纹变化分析 TLSFOWARD抓包工具
数据库·爬虫·网络协议·搜索引擎·php
数智化管理手记7 小时前
账龄分析手工统计易遗漏?自动账龄分析工具怎么搭建
大数据·网络·数据库·人工智能·数据挖掘