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>
相关推荐
胡闹543 分钟前
MyBatis-Plus 更新字段为 null 为何失效?
java·数据库·mybatis
zd84510150012 分钟前
[LWIP] LWIP热插拔功能 问题调试
开发语言·php
嘟嘟w14 分钟前
MySQL 数据库存储引擎有那些,有什么区别?
数据库·mysql
千寻技术帮2 小时前
10361_基于Springboot的哈尔滨旅游管理系统
数据库·spring boot·mysql·毕业设计·旅游
TG:@yunlaoda360 云老大3 小时前
华为云国际站代理商GES的图引擎服务有哪些优势?
服务器·数据库·华为云
Coder_Boy_9 小时前
基于SpringAI的智能平台基座开发-(六)
java·数据库·人工智能·spring·langchain·langchain4j
热爱专研AI的学妹9 小时前
数眼搜索API与博查技术特性深度对比:实时性与数据完整性的核心差异
大数据·开发语言·数据库·人工智能·python
hopsky9 小时前
ShardingSphere功能简介
数据库·sql
talenteddriver10 小时前
mysql: MySQL索引和排序相关名词概念汇总
数据库·mysql
6极地诈唬10 小时前
【PG漫步】DELETE不会改变本地文件的大小,VACUUM也不会
linux·服务器·数据库