如何从准备好的语句中获取关联数组中的所有内容?

2023-12-07

我正在尝试这段代码:

    if ($result = $this->mysqli->prepare("SELECT * FROM `mytable` WHERE `rows1`=?"))
    {

        $result->bind_param("i",$id);
        $result->execute();
        while ($data = $result->fetch_assoc())
        {

            $statistic[] = $data;

        }

        echo "<pre>";
        var_dump($statistic);
        echo "</pre>";
    }

但它抛出以下错误

[2012 年 6 月 15 日星期五 12:13:11] [错误] [客户端 127.0.0.1] PHP 致命错误: 调用[myfile.php]中未定义的方法 mysqli_stmt::fetch_assoc()

我也尝试过:

if ($result = $this->mysqli->prepare("SELECT * FROM `mytable` WHERE `rows1`=?"))
    {

        $result->bind_param("i",$id);
        $rows = $result->execute();
        while ($data = $rows->fetch_assoc())
        {

            $statistic[] = $data;

        }

        echo "<pre>";
        var_dump($statistic);
        echo "</pre>";
    }

这使得:

[2012 年 6 月 15 日星期五 12:22:59] [错误] [客户端 127.0.0.1] PHP 致命错误: 对非对象调用成员函数 fetch_assoc() [myfile.php]

我还能做些什么来获得结果或者我做错了什么?我需要来自数据库的关联数组,看起来像$data[0]["id"] = 1


事实上你can很容易做到这一点,你只是不能用mysqli_stmt对象,你必须提取底层mysqli_result,您只需调用即可做到这一点mysqli_stmt::get_result()。注意:这需要 mysqlnd(MySQL 本机驱动程序)扩展,该扩展可能并不总是可用。

然而,下面关于推荐 PDO 而不是 MySQLi 的观点仍然有效,这是一个很好的例子:MySQLi 用户层 API 没有任何意义。我断断续续地使用 MySQLi 花了几年时间才发现上述机制。现在,我承认将语句和结果集概念分开确实有意义,但在这种情况下,为什么语句有一个fetch()方法?值得深思(如果您仍然在 MySQLi 和 PDO 之间犹豫不决)。

为了完整起见,这里有一个(松散地)基于问题中原始代码的代码示例:

// Create a statement
$query = "
    SELECT *
    FROM `mytable`
    WHERE `rows1` = ?
";
$stmt = $this->mysqli->prepare($query);

// Bind params and execute
$stmt->bind_param("i", $id);

// Extract result set and loop rows
$result = $stmt->get_result();
while ($data = $result->fetch_assoc())
{
    $statistic[] = $data;
}

// Proof that it's working
echo "<pre>";
var_dump($statistic);
echo "</pre>";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从准备好的语句中获取关联数组中的所有内容? 的相关文章

  • 用于分页的php示例脚本[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 任何人都可以建议一个好的分页 php 脚本 其中人们想要分页显示数据库中的大量项目 以下链接可以帮助您
  • 当存在联系时如何为数组分配排名号

    当尝试为数组中存在平局的数值分配排名时 我很难知道从哪里开始 因此 例如 我需要像下面这样转换一个数组 myarray 4 76 34 13 34 到另一个数组中 例如 myarray2 1 5 3 5 2 3 5 基本上 当相同的数字在数
  • PHP 有效读取 csv 文件

    有几种使用 PHP 读取 CSV 文件的方法 我以前用过explode函数将每一行放入一个数组中 然后explode逗号并使用trim删除数据周围的任何引号 本来就很乱 PHP 5 现在有fgetcsv和 str getcsv 我猜这是这些
  • 未捕获的 ValueError:mysqli_stmt::execute():参数 #1 ($params) 必须是列表数组

    我试图通过这两个查询在我的数据库中插入准备好的语句多个值 这两个查询都发生故障 返回 未捕获的错误 调用未定义的方法 mysqli stmt bindValue 对于第一个代码或 未捕获的 ValueError mysqli stmt ex
  • 如何在Web服务中传递URL

    我想将此 URL 作为网址中的值传递http localhost h2orn php verify php email emails hash hash但是 我只能在 符号之前传递 我想传递所有 URL 我正在使用java网络服务 代码在这
  • 如何在 Laravel 5.5 中编辑“页面因不活动而已过期”的视图

    在 Laravel 5 5 中 当您使用 CSRF 保护 默认情况下 并且在长时间不活动后发送发布请求时 您将收到此错误页面 屏幕截图 我对此错误表示同意 但是 我需要更改此错误的视图 文本以确保与我的应用程序风格和语言相匹配 关于如何编辑
  • 如何从 Laravel 5 中的 Public/Images 文件夹中删除图像(URL 数据)

    如何从 laravel 5 中的 public images 文件夹中删除图像文件 我从这个网站找到了一些例子 但我知道他们只是在他们的文件中使用文件名record table 但我正在使用类似的东西URL e g localhost pr
  • 为什么我应该使用 $_GET 和 $_POST 而不是 $_REQUEST? [复制]

    这个问题在这里已经有答案了 除此之外 REQUEST从 cookie 读取 有什么理由我应该使用 GET and POST代替 REQUEST 这样做的理论和实践理由是什么 当我只想让用户的某些数据返回某些数据时 我使用 REQUEST 当
  • PSR-4 代码库中条令生成器的解决方法

    在 Windows 机器上使用 Symfony 2 和 Doctrine 我正在尝试 从现有模式生成实体 php app console doctrine mapping import force CoreBundle annotation
  • SimpleSAMLPHP 重定向循环

    我们正在尝试使用自定义 mysql 数据库设置 sso 但它在以下两个请求之间进入无限循环 POST http 192 168 0 15 simplesaml module php core loginuserpass php 设置Cook
  • Propel Query 中的动态表名称

    我想知道您是否可以使 propel 查询的表名称动态化 有点像变量 一个例子类似于 DynamicVar Query create 我让它在 ifs 中工作 就像下面的例子一样 但如果更动态地制作 可以删除相当多的行 这些表的设置都是相同的
  • URL 重写帮助

    RewriteEngine on RewriteCond REQUEST URI index php RewriteRule index php q 1 L 这应该将任何 url 重写为 index php q url 并且它可以工作 反正
  • 如何在 joomla 模块中通过 javascript 发送输入文件类型

    我想将带有 javascript 的文件发送到 php 文件 我的 php 文件中有这个表单
  • 如何覆盖 phpunit 中导出的变量?

    我知道我可以设置环境变量 https phpunit de manual current en appendixes configuration html在我的 phpunit xml 里面
  • 解析 PHP 响应:未捕获的语法错误:意外的标记 <

    我正在使用 AJAX 来调用 PHP 脚本 我唯一需要从响应中解析的是脚本生成的随机 ID 问题是 PHP 脚本会引发许多错误 这些错误实际上很好 不会妨碍程序功能 唯一的问题是当我跑步时 parseJSON response I get
  • 转换MAC地址格式

    我刚刚编写了一个小脚本 从交换机中提取数百个 MAC 地址进行比较 但它们的格式为 0025 9073 3014 而不是标准的 00 25 90 73 30 14 我对如何转换它感到困惑 我能想到的最好的办法就是在 处将它们分解成碎片 然后
  • $_SESSION 中保存大量信息可以吗?

    我需要存储许多数组 SESSION以防止从 MySQL 检索信息 可以吗 其中 太多 的信息有多少 SESSION还是没有 太多 谢谢 附 或者更好地使用http php net manual en book memcache php ht
  • PHP 中的嵌套 JSON 输出

    我正在为 iOS 应用程序构建 API 并尝试将 mySQL 数据转换为 JSON 字符串进行处理 所需的输出将需要顶级订单详细信息 例如客户名称和地址 然后是订购的产品子数组 我需要的两个表中有相当多的字段 我希望拥有所有字段 我已经构建
  • 如何显示不同页眉的页面? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在为我的学校项目开发网站 但我遇到了一个问题 我在每个页面上显示一个标题 我的标题之一包含登录表单 另一标题包含用户名 搜索栏等 问题是
  • PHP - 查找和比较日期

    你好 我有 foreach 我可以在其中获取数据库中的事件数据 我使用数据库中的日期名称 例如 event date 我需要在一个 div 中比较具有相同日期和输出的操作 例如我有这个事件 活动一 9 月 13 日 活动二 9 月 1 日

随机推荐

  • 如何在 Perl 中处理具有依赖关系的调度线程?

    我有以下场景 sub 1 can run immediately sub 2 can run immediately sub 3 can run only after sub 1 finishes sub 4 can run only af
  • JSONStore searchFields 中“数字”和“整数”之间的差异

    我有关于 JSONStore searchFields 的问题 如果我使用number作为 searchFields 键并尝试通过以下方式查找数据WL JSONStore find方法与0作为查询 它将命中所有数据 未过滤 随着intege
  • GPU 上的 Tensorflow matmul 计算比 CPU 上慢

    我是第一次尝试 GPU 计算 当然希望能有很大的加速 然而 对于张量流中的基本示例 情况实际上更糟 在 cpu 0 上 十次运行中的每一次平均需要 2 秒 gpu 0 需要 2 7 秒 gpu 1 比 cpu 0 差 50 需要 3 秒 这
  • 缺少 mbstring 扩展名。请检查您的 PHP 配置

    phpMyAdmin 错误 缺少 mbstring 扩展名 请检查您的 PHP 配置 我已经尝试过所有解决方案 但没有一个对我有用 我不知道还能做什么 我见过这个问题 当我从 15 10 升级到 16 04 或安装 16 04 时 会出现此
  • Safari 5 扩展:如何检测窗口的当前选项卡何时发生更改?

    我有一个包含工具栏的 Safari 5 扩展 每当当前选项卡发生更改时 该工具栏都应该更新 我想从我的酒吧脚本中做这样的事情 safari self browserWindow addEventListener activeTab tabC
  • x86 NASM 程序集 - 输入问题

    我正在努力从用户那里获取两次输入 并比较输入 如果它们相同 则程序退出 如果没有 它会重新打印第一次输入的内容 并等待用户输入内容 如果相同 则发生与之前相同的情况 如果没有 就会发生与之前相同的情况 输入和循环不是问题 主要问题是我从程序
  • R 中的大幂

    我正在尝试计算 2 1000 并对数字的值求和 出于所有意图和目的 它seems就像我有正确的方法但错误的答案 我不确定是否有特殊的方法来进行求和 或者我的选择可能是混乱的 无论如何 R 中的 2 1000 给出 1 072e 301 我用
  • 如何在matlab中创建留一交叉验证? [复制]

    这个问题在这里已经有答案了 我仍然对我的代码感到困惑 我尝试在 matlab 中实现留一交叉验证进行分类 所以在这里 我从训练中取出一个数据作为测试数据 我已经在matlab中编写了代码 但我不确定它是否正确 因为结果是错误的 有人可以帮我
  • 无论如何,是否可以在数据流管道中共享状态变量?

    我正在用 python 制作数据流管道 我想跨管道转换和跨工作节点共享全局变量 例如全局变量 跨多个工作人员 有什么办法可以支持这个吗 提前感谢 有状态处理可用于在特定节点的工作人员之间共享状态 但无法在转换之间共享 https beam
  • Azure 角色本地存储是否保证下一个使用同一主机的应用程序无法访问?

    假设我的 Azure 角色将文件存储到角色本地文件系统并忘记删除它们 将来使用该主机的另一个应用程序是否可以访问这些文件 我读了白皮书它充满了营销风格的陈述 但我找不到关于在新角色开始之前主机 清理 得有多彻底的明确陈述 我能否完全确定另一
  • 在 Swift 3 Playground 中读取 plist

    我在这里关注了很多问题 但似乎没有任何效果 我在用Swift3 in a Playground 在 El Capitan 和 Xcode 8 1 上运行 我有一个plist以根作为Dictionary包含一个 Int 值和两个 2D Int
  • wxPython 网格中的自动换行和换行符

    我想用具有以下行为的单元格实现一个网格 如果单元格文本不适合单元格 则应将其换行 单元格文本中的换行符 n 也应该被处理 即 当您为单元格启用 换行 选项时 与 MS Excel OO Calc 等表格编辑器中的行为相同 我尝试按如下方式执
  • 如何修剪传递 select 查询的 in 子句的值

    下面是使用 in 条件选择记录的简单 SQL 查询 like this I have 6000 usernames select from tblUsers where Username in abc xyz pqr mnop 我知道有LT
  • 膨胀类 android.support.design.widget.TabLayout 时出错

    我正在尝试使用 Eclipse 创建一个基于 Google 的 材料设计 的菜单选项卡 但出现错误 01 07 01 02 10 238 E tag 6696 contact on create called 01 07 01 02 10
  • Microsoft Solver Foundation 对一个简单的 ILP 给出了错误的答案

    我想使用 Microsoft Solver Foundation 解决 C 中的二元线性问题 我不知道为什么我得到了错误的答案 目标值应该是 41 1 但我得到 213 5 个变量的值应该是 1 其他变量应该是 0 但是我得到了很多错误值的
  • 在 symfony 中获取服务内的路由名称

    伙计们 我有一个服务 其中有一个接受路由器服务的构造函数 我的问题是如何知道当前的路线名称 这是我的服务 class Navigation protected modules protected router public function
  • 为长度为 1 的位域赋值

    假设我有 struct A signed char a 1 unsigned char b 1 如果我有 A two three two a 2 two b 2 three a 3 three b 3 two将包含0s 在它的领域 而thr
  • 如何使用@PathVariable配置spring-data-rest搜索方法路径

    我想通过将参数作为路径变量传递来自定义 spring data rest 搜索方法路径 如下所示 http localhost 8080 orders search customers customerId findByCustomer P
  • JavaScript 打包整数并计算任意精度浮点数:

    我需要在 JavaScript 中执行以下操作 但到目前为止无法找到无缝执行此操作的解决方案 按特定顺序获取两个整数并将它们像 Python 的 struct 模块一样打包 这个打包值 支持与主机不同的字节序的好处 将被转换为 64 位浮点
  • 如何从准备好的语句中获取关联数组中的所有内容?

    我正在尝试这段代码 if result this gt mysqli gt prepare SELECT FROM mytable WHERE rows1 result gt bind param i id result gt execut