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>
相关推荐
这个DBA有点耶5 小时前
2026年分布式数据库有哪些主流选择?先评估这5个维度再决定
数据库·分布式·dba
这个DBA有点耶8 小时前
从MySQL 5.7到8.0:JSON查询性能差在哪?虚拟列索引vs多值索引怎么选
数据库·mysql·架构
胡写代码8 小时前
数据库审计字段,别再每张表各写一套了——我统一成这 6 个字段
数据库
SelectDB12 小时前
为什么 JSON 正在成为分析数据库新的竞争点?
数据库·json·agent
ClouGence13 小时前
开源数据库管理工具 CloudDM 4.2.0 发布,新增 GoldenDB、KingbaseES 等数据源
数据库·dba·devops
发霉的馒头13 小时前
ORA-00845: MEMORY_TARGET not supported on this system的解决方法
数据库
BingoGo14 小时前
免费可商用 PHP 管理后台 CatchAdmin V5.4.0 发布,新增短信服务能力
后端·php
草莓熊Lotso15 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
煎饼皮皮侠17 小时前
【设计】设计一个web版的数据库管理平台后端(之五) --借鉴mybatis
数据库·mybatis
东风破_1 天前
danci 2:创建的单词书到底存在哪里?从 Supabase 一路理解 ORM、Drizzle 和 RLS
数据库·后端·node.js