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>
相关推荐
BingoGo2 小时前
PHP 如何利用 Opcache 来实现保护源码
后端·php
Raymond运维2 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉2 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud18 小时前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud18 小时前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence20 小时前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
BingoGo1 天前
2025 年 PHP 常见面试题整理以及对应答案和代码示例
后端·php
DemonAvenger1 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
RestCloud2 天前
揭秘 CDC 技术:让数据库同步快人一步
数据库·api