在从数据库获取设置的函数上,我遇到了错误[重复]

2024-01-04

我正忙于从数据库获取设置的函数,突然,我遇到了这个错误:

Fatal error: Call to a member function bind_param() on boolean in C:\xampp2\htdocs\application\classes\class.functions.php on line 16

通常,这意味着我从不存在的表和内容中选择内容。但在这种情况下,我不是...

这是getSetting功能:

public function getSetting($setting)
{
    $query = $this->db->conn->prepare('SELECT value, param FROM ws_settings WHERE name = ?');
    $query->bind_param('s', $setting);
    $query->execute();
    $query->bind_result($value, $param);
    $query->store_result();
    if ($query->num_rows() > 0)
    {
        while ($query->fetch()) 
        {
            return $value;
            if ($param === '1')
            {
                $this->tpl->createParameter($setting, $value);
            }
        }
    }
    else
    {
        __('invalid.setting.request', $setting);
    }
}

The $this->db变量通过构造函数传递。如果有需要的话,这里是:

public function __construct($db, $data, $tpl)
{
    $this->db = $db;
    $this->tpl = $tpl;
    $this->data = $data;
    $this->data->setData('global', 'theme', $this->getSetting('theme'));
}

另外,由于我正在使用数据库,因此我的数据库连接:

class Database
{
    private $data;

    public function __construct($data)
    {
    $this->data = $data;
    $this->conn = new MySQLi(
      $this->data->getData('database', 'hostname'), 
      $this->data->getData('database', 'username'), 
      $this->data->getData('database', 'password'), 
      $this->data->getData('database', 'database')
    );
    if ($this->conn->errno)
    {
        __('failed.db.connection', $this->conn->errno);
    }
    date_default_timezone_set('Europe/Amsterdam');
}

我已经测试了连接,100% 肯定它按预期工作。 我在配置文件中设置数据库连接:

'database' => array(
    'hostname' => '127.0.0.1',
    'username' => 'root',
    'password' => ******,
    'database' => 'wscript'
)

现在奇怪的是;表存在,请求的设置存在,数据库存在,但是该错误仍然不会消失。以下是数据库正确性的一些证明:


问题在于:

$query = $this->db->conn->prepare('SELECT value, param FROM ws_settings WHERE name = ?');
$query->bind_param('s', $setting);

The prepare() http://php.net/manual/en/mysqli-stmt.prepare.php方法可以返回false你应该检查一下。至于为什么会返回false,也许是表名或列名(在SELECT or WHERE条款)不正确?

另外,考虑使用类似的东西$this->db->conn->error_list http://php.net/manual/en/mysqli.error-list.php检查解析 SQL 时发生的错误。 (我偶尔也会回显实际的 SQL 语句字符串并粘贴到 phpMyAdmin 中进行测试,但肯定存在一些问题。)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在从数据库获取设置的函数上,我遇到了错误[重复] 的相关文章

  • 按通用值对值进行分组:userid 和 ipaddress

    我正在解决数据库中的一个问题 我正在尝试查找使用多个帐户的用户 我有一个用户 ID 和使用的 IP 地址的列表 如下所示 用户 ID IP 地址 1 IP 地址 13 2 IP 地址 23 1 IP 地址 12 4 IP地址56 9 IP
  • 通过 __get() 通过引用返回 null

    快速规格 PHP 5 3 error reporting 1 the highest 我正在使用 get 通过引用技巧神奇地访问对象中任意深度的数组元素 快速示例 public function get key return isset t
  • facebook php - 如何获取专辑封面照片

    我需要使用 PHP SDK Facebook 获取专辑封面照片 我尝试 https graph facebook com ALBUM ID picture type album 但我得到默认图像 例如 获取用户 https graph fa
  • 在值中包含换行符

    我有一个 Word 模板 其中 php 代码中定义了值 在PHP代码中 document gt setValue Value1 value1 在word模板中 Value1 如何将包含两个值之间的断线的值包含在单词的值中 Replace n
  • Yii2 异常:ApcCache 需要加载 PHP apc 扩展

    在高级模板前端的主配置中配置缓存组件时 我收到异常 在我的 php ini 上启用了扩展 rsults 如何解决此问题 前端 config main php cache gt class gt yii caching ApcCache ke
  • 如何使用 Facebook SDK API 为页面/网址“点赞”?

    我正在使用这段代码 facebook gt api me likes post array url gt http www google com 我收到以下错误 Fatal error Uncaught OAuthException 200
  • 在 Laravel 5 中截断表

    描述 我有一个充满测试数据的表 有时 我想清除它以获取新数据 我可以在 DBMS 应用程序中执行截断 例如MySQL 工作台 但我试图在我的应用程序中实现它 Goal 创建一个按钮 单击时截断数据库中的表 这是我的步骤 1 声明一条路线 R
  • 负载平衡集群中的 PHP 会话 - 如何?

    好的 我得到了这个完全罕见的负载平衡 PHP 网站的独特场景 令人遗憾的是 它过去没有进行负载平衡 现在我们开始遇到问题 目前唯一的问题是 PHP 会话 当然 一开始没有人想到这个问题 因此 PHP 会话配置保留为默认值 因此 两台服务器都
  • 第三个下拉菜单不从数据库填充

    我有以下 Index php
  • 使用先前的反向引用作为命名捕获组的名称

    有没有办法使用对先前捕获组的反向引用作为捕获组的名称命名捕获组 这可能不可能 如果不可能 那么这就是一个有效的答案 下列 data description some description preg match data matches p
  • 如何解码 eval( gzinflate( base64_decode(

    我已将此代码注入到我的网站中 如何解码尾随字符串 我需要知道发生了什么以及其背后的代码是什么 这应该输出将被执行的代码eval 我希望这就是您正在寻找的
  • PHP Solr PECL 扩展安装

    我已经使用命令安装了 pecl solr pecl install solr 和梨使用 wget http pear php net go pear phar php go pear phar 重启Apache后 我仍然收到错误 Fatal
  • 语法错误,第 288 行出现意外的“endif”(T_ENDIF)[关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我一直在离线处理我的 WordPress 网站的此代码错误 解析错误 语法错误 homez 541 photoher marie
  • postgreSql 中特定时间后表更新

    我已经在 postgres 中创建了表 现在我想在特定时间 例如 1 小时 后更新一行 我看到很多问题 例如 https dba stackexchange com questions 56424 column auto updated a
  • PHP 数组通过 JSON 转为 jquery 数组

    我有点困惑为什么以下不起作用 get php
  • 如何在 Zend Framework 3 中注册自定义表单视图助手

    我正在将继承的 Zend Framework 2 应用程序迁移到 Zend Framework 3 并且在注册自定义表单视图助手时遇到了一些困难 这些助手在应用程序使用版本 2 时起作用 主要用于添加标签属性以实现可访问性 例如 这是一个自
  • 如何从父类中获取子类名

    我试图在不需要子类上的函数的情况下完成此任务 这可能吗 我有一种感觉 但我真的很想确定
  • 使用 php-ews(Exchange Web 服务)在特定日期后获取电子邮件

    在我的 PHP 脚本中 我需要弄清楚如何检索指定消息 ID 之后或特定日期之后的所有电子邮件 两者都可以 我只需要检索自上次抓取收件箱以来的新电子邮件 这个收件箱每天收到数千封电子邮件 而且我在 30 天内无法删除任何电子邮件 对于初始导入
  • php 数组中出现意外的 json 输出结构

    我正在尝试转换动态数据 如何从 PHP 获取此 JSON JSON 122240cb 253c 4046 adcd ae81266709a6 item 0 3 这就是我所做的 但它不起作用 PHP json array 122240cb 2
  • 一种无需 JavaScript 即可在 PHP 中确定浏览器宽度的方法?

    首先有吗 或者我必须使用javascript 我希望能够更改使用的 CSS 因此 frex 我可以为移动设备或其他设备加载较小的字体 不幸的是 仅使用 PHP 无法检测用户分辨率 如果您使用 Javascript 则可以在 cookie 中

随机推荐

  • 程序如何在内存中运行以及操作系统处理内存的方式

    我不清楚进程执行时的内存管理 在运行时 Here is a diagram 我不清楚图像中的以下内容 1 该图像所指的堆栈是什么 2 什么是内存映射段 它指的是文件映射 3 堆与进程有什么关系 堆是仅在进程中处理还是堆是由操作系统内核维护的
  • $(位置).attr('href');不工作

    我不知道为什么 但我对这段代码有问题 横幅显示在每个页面上 尽管它指定了属性 location attr href 您可以帮助我吗 div div class bottom content a href http www cliente o
  • 可存储空数据声明

    我正在尝试为 C 库创建 Haskell 包装器 底层结构太复杂 无法表达为显式类型 而且除了在 C 函数之间传递之外 我实际上并不使用它们 所以我使用EmptyDataDecls让 GHC 帮我解决这个问题 我需要的是一个指向这些数据类型
  • 在 Matplotlib/Python 中更改极坐标图的轴选项

    我在更改 Matplotlib 中的轴标签时遇到问题 我想更改极坐标图中的径向轴选项 基本上 我正在计算圆柱体的变形 这只不过是半径偏离原始 完美圆形 圆柱体的程度 由于拉力和压力 一些变形值为负值 而另一些则为正值 我正在寻找一种方法以图
  • CSS:如何伪造 :hover 状态?

    在这里 我有几个 div 当鼠标悬停在它们上时 会有过渡效果 如左内角 我想首先假装悬停 例如 首先让左外角div处于 hover状态 而没有用户实际的hover动作 然后 当用户真正将鼠标悬停在其他 div 上时 假悬停状态就会取消 对于
  • 如何在 Pl/SQl 中使用批量收集和插入

    我想从一个表中获取大约 600 万行 并将它们全部插入到另一个表中 我该如何使用BULK COLLECT and FORALL declare define array type of the new table TYPE new tabl
  • xUnit 与 Jenkins:如何在构建控制台输出中显示颜色?

    我成功设置了 CasperJS 测试套件 并通过这种方式导出到 xUnit XML 文件 casperjs test googletesting js xunit log xml 我成功地通过 Jenkins 自动化了这些测试 这要归功于x
  • 如何在Jenkinsfile中使用jenkins版本号插件?

    在安装了 版本号插件 的 Jenkinsfile 中尝试此步骤 stage Build echo Building TAG BUILD DATE FORMATTED yyyyMMdd develop BUILDS TODAY sh dock
  • shell 中的浮点舍入

    printf 0 2f n 41 495 41 49 printf 0 2f n 41 485 41 49 printf 0 2f n 41 475 41 47 printf 0 2f n 41 465 41 47 printf 0 2f
  • MPMoviePlayerController 关闭后顶部状态栏消失

    我的 iPhone 应用程序遇到一个有趣的小问题 我有一个带有表格的视图 每个单元格在单击时全屏播放视频 然后当您按完成时 视频停止并返回表格视图 唯一的问题是 当您在视频加载的前 2 或 3 秒内按 完成 时 当视图返回到表格视图时 屏幕
  • Python 中的子进程 Popen 和 PIPE

    以下代码打印一个空行作为输出 该输出为 false 问题不在于权限 因为我使用 pdf 文件的 777 权限测试了该命令 如何修复该命令以提供正确的输出 import subprocess from subprocess import PI
  • 如何为所有子域设置 Git 配置选项?

    与您可以设置的方式类似特定 URL 的 Git 配置选项 https stackoverflow com a 23807432 1233435 like git config http https code example com sslV
  • 如何禁用 Android Lollipop 波纹的 alpha 值?

    我有一个使用自定义颜色的波纹 然而 颜色永远不会完全不透明 根据来自的回答Ripple 的颜色应该是什么 colorPrimary 或 colorAccent 材料设计 https stackoverflow com questions 2
  • 使用 @Query 在 intellij 中进行语言注入

    使用intellij idea 2016 3 4 是否可以根据参数注入语言 考虑一下这个 Query nativeQuery true value select from Foo List
  • 无法添加文件 iOS 应用程序包

    我添加了一个带有扩展名的空文件 js在资源路径中 但未添加到应用程序的捆绑包中 我确信我已添加到应用程序目标 但有时它包含在捆绑包中 有时它不包含在捆绑包中 我通过以下代码获取文件的内容 NSString filePath NSBundle
  • 测试不同客户端和服务器版本的最佳 Git 策略

    我希望能够为 Java 客户端 服务器运行集成测试 使用嵌入式 jetty 此外 我希望能够在集成测试期间混合搭配不同的服务器和客户端源代码版本 我想知道实现此目的的最佳 git 或 maven 版本策略是什么 客户端和服务器使用相同的 g
  • 如何使用 C# 安全地将数据保存到现有文件?

    如何安全地将数据保存到 C 中已存在的文件中 我有一些数据被序列化到文件中 我很确定直接安全到文件不是一个好主意 因为如果出现任何问题 文件将被损坏 并且以前的版本将丢失 这就是我到目前为止一直在做的事情 string tempFile P
  • webpacker:安装后应用程序中的页面开始加载很长时间

    我正在将 webpacker 安装到我的 Rails 应用程序中 安装后 我注意到应用程序中的页面开始加载很长时间 会发生什么情况 从日志 Completed 200 OK in 90075ms Views 90072 2ms Active
  • 为什么服务器和小型/大型机以及混合核心需要不同的 CPU 架构? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在从数据库获取设置的函数上,我遇到了错误[重复]

    这个问题在这里已经有答案了 我正忙于从数据库获取设置的函数 突然 我遇到了这个错误 Fatal error Call to a member function bind param on boolean in C xampp2 htdocs