调用未定义的方法 mysqli_stmt::get_result() 并安装 mysqlnd

2023-12-03

正如标题所示,我在运行 PHP 5.4 版的共享托管服务器上有可用的 mysqlnd。当我尝试调用 mysqli get_result() 函数时,出现此错误。

我已经与托管提供商多次交谈,最近他们告诉我尝试运行

# /opt/ntphp/php54/bin/php -i | grep -i mysqlnd

我跳上 ssh 并运行这个命令,结果如下:

mysqlnd
mysqlnd => enabled
Version => mysqlnd 5.0.10 - 20111026 - $Id: c85105d7c6f7d70d609bb4c000257868a40840ab $
Loaded plugins => mysqlnd,example,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password
mysqlnd statistics =>  
Client API version => mysqlnd 5.0.10 - 20111026 - $Id: c85105d7c6f7d70d609bb4c000257868a40840ab $

所以,这在我看来正如我所期望的那样。

我在另一个论坛帖子上发现了另一段 PHP 代码,建议运行:

$hasMySQL = false; $hasMySQLi = false; $withMySQLnd = false; $sentence = '';

if (function_exists('mysql_connect')) {
    $hasMySQL = true;
    $sentence.= "(Deprecated) MySQL <b>is installed</b> "; } else
    $sentence.= "(Deprecated) MySQL <b>is not</b> installed ";

if (function_exists('mysqli_connect')) {
     $hasMySQLi = true;
     $sentence.= "and the new (improved) MySQL <b>is installed</b>. "; } else
     $sentence.= "and the new (improved) MySQL <b>is not installed</b>. ";

 if (function_exists('mysqli_get_client_stats')) {
     $withMySQLnd = true;
     $sentence.= "This server is using MySQLnd as the driver."; } else
     $sentence.= "This server is using libmysqlclient as the driver.";

 echo $sentence;

我这样做并得到了结果:

(已弃用)MySQL 已安装,新的(改进的)MySQL 已安装。该服务器使用 libmysqlclient 作为驱动程序。

我正在使用 Arvixe 运行我的托管,他们有一篇博客文章基本上说“运行 PHP 5.4,这将起作用”。我很清楚他们认为这个函数应该运行,但它却给了我一个致命错误。

旁注 - 代码在我的本地计算机上完美运行,并且我只在调用 get_result() 时收到错误。

EDITED:

PHP 的设置方式如下:

$stmt = $con->prepare("SELECT * FROM User_Details WHERE LCASE(username) = LCASE(?) LIMIT 1");
  $stmt->bind_param("s", $username);
  $stmt->execute();
  $result = $stmt->get_result(); // This line throws the ugly error

对于任何想知道这是怎么回事并使用 Arvixe 的人。这是我从工作人员那里收到的回复。

这是围绕 MySQLND 的一些混乱,这是由旧的 平台及其内容我将与我的员工沟通。

我们曾经运行一个允许我们拥有单独的 PHP 的系统 安装后,5.4 和 5.5 都运行了 MysqlND。这 我们现有的新 PHP 系统在一致的情况下运行所有​​ PHP 安装 配置,因此我们的 PHP 5.3 安装(基本安装)不会 使用 MySQLND 也不会安装我们的 5.4 或 5.5。

这将在未来进行审查,因为 PHP 5.6 将把 MySQLND 作为 默认值。

目前我们支持 MySQLND 的唯一方法是通过 VPS/专用 服务器。

因此,如果您使用的是 Arvixe 而不是 VPS,那么您就无法使用超级常见且推荐的约定从数据库检索数据。有多种不同方法可以解决此问题。它们要么对我的项目不可行,要么我无法让它们工作,但对于较小的查询,似乎使用 $stmt->bind_result() 是更流行的方法之一。http://php.net/manual/en/mysqli-stmt.bind-result.php

对我来说,我将把我的业务带回 GoDaddy。我花了 10 多个小时试图找到解决方案,但没有提供任何解决方案,除了“如果您不满意,我们有 60 天退款保证”。

感谢大家对此提供的帮助。尽管令人沮丧,但我在这个过程中并从这些董事会中学到了很多东西......就像通常的情况一样。

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

调用未定义的方法 mysqli_stmt::get_result() 并安装 mysqlnd 的相关文章

  • 纠正装饰器模式的一个大缺点

    不久前 我在重构一些游戏战斗代码时决定尝试装饰器模式 战斗者可以拥有各种被动能力 也可能是不同类型的生物 我认为装饰器可以让我在运行时以各种组合添加行为 因此我不需要数百个子类 我几乎已经完成了 15 个左右的被动能力装饰器 在测试中我发现
  • 递归获取数组的键并创建下划线分隔的字符串

    现在我得到了一个包含某种信息的数组 我需要从中创建一个表 例如 Student Address StreetAddress gt Some Street StreetName gt Some Name Marks1 gt 100 Marks
  • 让登录更安全

    我已使用此代码进行管理员登录 仅当用户输入正确的用户名和密码时才应打开loginhome php 但后来我意识到这根本不安全 任何人都可以直接访问 mywebsite loginhome php 而无需登录 注销后 可以使用后退按钮打开 l
  • PHP MySql 百分比

    我的问题是关于百分比 我不是专家 所以我会尽力以更好的方式进行解释 我的 mysql 服务器中有一个表 假设有 700 条记录 如下所示 Name country language Birth Lucy UK EN 1980 Mari Ca
  • 简单的 PHP 条件帮助: if($Var1 = in list($List) and $Cond2) - 这可能吗?

    这是一个可能的功能吗 我需要检查一个变量是否存在于我需要检查的变量列表中 并且 cond2 是否为 true 例如 if row name 1 2 3 Cond2 doThis 它对我不起作用 我在复制粘贴中更改的只是我的列表和变量名称 i
  • 删除PHP字符串中所有不匹配的字符?

    我有一个文本 我想从中删除所有不属于以下字符的字符 所需字符 0123456789 abcdefghijklmnopqrstuvwxyz n 最后一个是我确实想保留的 n 换行符 要匹配除列出的字符之外的所有字符 请使用反转字符集 http
  • 单词之间没有空格的语言(例如亚洲语言)中的断词?

    我想让 MySQL 全文搜索适用于日语和中文文本以及任何其他语言 问题在于这些语言以及可能其他语言通常在单词之间没有空格 当您必须键入与文本中相同的句子时 搜索没有用 我不能只在每个字符之间添加空格 因为英语也必须有效 我想用 PHP 或
  • PHP 会话不适用于游戏

    我正在尝试模仿一款名为 SKUNK 用骰子玩 的游戏来完成一项作业 我无法让会话正常工作 这是我第一次使用 PHP 我还被告知无需会议即可完成 这是我的代码
  • 如何在响应ajax codeigniter后停止执行其他控制器

    我想知道如何在响应输出 json 数据后停止执行函数和涉及的其他控制器 就我这里的情况而言 我只是打电话test 函数于dashboard控制器 In dashboard构造函数将执行MY Login library In MY Login
  • Woocommerce 让产品显示在存档页面中

    我正在尝试让所有产品显示在我商店的存档页面中 我想知道他们的id我正在使用我的一个钩子 它在 wp head 上运行并检查 if is product category 我想以某种方式访问 产品的查询并获取它们的 ID if is prod
  • 如何从父类函数访问子类中定义的常量?

    我从 php net 看到这个例子 但 c MY CONST 仅在 5 3
  • 使用 preg_replace 仅替换第一个匹配项

    我有一个结构类似于以下的字符串 aba aaa cba sbd dga gad aaa cbz 该字符串每次都可能有点不同 因为它来自外部源 我只想替换第一次出现的 aaa 但其他人则不然 是否可以 可选的第四个参数预替换 http php
  • 从 .phar 存档中提取文件

    对于 Phar 文件 我完全错过了一些东西 我正在安装一个需要 phpunit pdepend 和其他依赖项的项目 我将它们作为 phar 文件获取 但是 我无法使用命令行工具 php 命令 从中提取文件 我用谷歌搜索了这个问题 但没有发现
  • “使用未定义常量”注意,但该常量应该被定义

    共有三个文件 common php controller php 和 user php 文件 common php 如下所示 文件controller php看起来像 文件 user php 如下所示 执行脚本时 会给出通知 注意 使用未定
  • PHP 在输入流中使用 fwrite 和 fread

    我正在寻找将 PHP 输入流的内容写入磁盘的最有效方法 而不使用授予 PHP 脚本的大量内存 例如 如果可以上传的最大文件大小为 1 GB 但 PHP 只有 32 MB 内存 define MAX FILE LEN 1073741824 1
  • 在 PHP 中撤销 Google 访问令牌

    正如标题所示 我想以编程方式撤销授予的访问令牌 即在 PHP 中 我发现这个他们的网站 https developers google com identity protocols OAuth2WebServer tokenrevoke 但
  • 通过 $_SESSION 从一个脚本发送到另一个脚本期间数据丢失

    我正在尝试将一个充满属性的对象从一个 PHP 发送到另一个 PHP SESSION object obj where obj是一个用 foreach 循环指定的对象 foreach array of objects as obj SESSI
  • jQuery Mobile 表单验证

    我有一个移动网站 除了验证之外一切都工作正常 基本上我希望从用户那里获取值 然后在单独的页面 process php 上处理它们 但是 在这样做之前 我需要检查以确保字段已填充 我已经研究了几种方法来做到这一点 但似乎没有一种有效 我现在有
  • 使用 Ajax.Request 将 JSON 从浏览器传递到 PHP 的最佳方法

    您好 我有一个 JSON 对象 它是一个二维数组 我需要使用 Ajax Request 将其传递给 PHP 我知道的唯一方法 现在我使用js函数手动序列化我的数组 并获取以下格式的数据 s 1 d 3 4等 我的问题是 有没有办法更直接 有
  • 无法显示 Laravel 欢迎页面

    我的服务器位于 DigitalOcean 云上 我正在使用 Ubuntu 和 Apache Web 服务器 我的家用计算机运行的是 Windows 7 我使用 putty 作为终端 遵循所有指示https laracasts com ser

随机推荐

  • 尝试在 Wix 中使用 EnsureTable 修复验证错误

    当我尝试使用 Wix 3 0 时 我遇到了许多错误msvbvm60 msm合并模块 C error LGHT0204 ICE03 Table Registry Column Registry Missing specifications i
  • documentdb 与 linq 连接

    我正在尝试使用 linq 在 DocumentDb 上运行以下查询 SELECT p id FROM p JOIN filter IN p Filters WHERE filter Id 686e4c9c f1ab 40ce 8472 cc
  • 页脚下方和调整窗口大小上方的空白

    我的页脚上方和下方有空白 有间隙 请检查下面的 css footer background image url images footer image png background repeat no repeat background s
  • 谷歌地图一次只打开一个信息窗口

    我正在尝试创建一个带有多个标记的谷歌地图 一次只允许一个信息窗口 标记是 IP 摄像机的位置 它们是通过 ruby 获取的 我读过大量类似问题的答案 其中解决方案是仅创建一个信息窗口并重新使用它 我尝试实施许多其他问题的解决方案 但无法使其
  • preg_split 字符串成字母对

    我在这个简单的问题上遇到了太多麻烦 将字符串拆分为 2 个字符值的数组 即 string abcdefgh With the correct regex should return ab cd ef gh array preg split
  • 防止/处理角度中的双击按钮

    在 Angular 中 我们可以设置一个按钮来发送 Ajax 请求 如下所示 ng click button click 并在控制器中 scope buttonClicked function make ajax request 因此 为了
  • android 如何检测屏幕压力?

    我想获得屏幕的压力 当我生病时运行应用程序 向我显示一条消息Unfortunately Application has stopped 我还有另一个问题 当我得到屏幕的压力时 是否可以转换为重量 grams 有一些数学或物理 这是我的代码
  • 如何在 Spring Boot - JPA - Hibernate 中获取所有表元数据?

    我需要获取元信息我的架构中动态存在的所有表 元信息例如表 实体 列名等 我已按照以下教程进行操作 https vladmihalcea com how to get the entity mapping to database table
  • 如何设置 ToolStripMenuItem 在代码中可见?

    我在 Windows 窗体应用程序中有一些代码 我想更改代码中下拉 ToolStripMenuItems 的可见性 我设置了 Visible 属性 但是当我设置断点并检查属性值时 项目的可见性没有改变 这是我的代码 foreach Tool
  • Cypress CI vsts 未找到二进制文件

    您能给我一些关于如何处理这个问题的建议吗 建设管道 npm install package json dependencies cypress 3 4 1 Release Powershell命令 npm node modules bin
  • main 的多重定义首先在这里定义

    我是编程新手 目前正在学习 C 编程 我正在使用 GCC 编译器在代码块上编写代码 当我创建一个新项目时 如您所知 它会使用它创建 main c 文件 因此我无法编译该项目中的另一个文件 File 1 include
  • 在 clickhouse 中枢轴

    我想在 clickhouse 中进行数据透视 我的数据格式为 rule name result string 1 result 1 string 2 result 2 string 3 result 3 string 4 result 4
  • 从 WCF 服务访问客户端证书属性

    我正在编写一个 WCF 服务 我需要访问用于连接到该服务的客户端证书的哈希代码 我正在寻找类似于 ASP NET 2 0 时代的 Request ClientCertificate 的属性或方法 但找不到任何可以轻松访问客户端证书的内容 我
  • 基类模板成员函数隐藏在派生类中,尽管参数列表不同

    这让我想知道 假设我有 class Base public template
  • 动态创建的 iframe 用于下载文件触发 onload with firebug 但不能没有

    EDIT 由于这个问题现在已经 解决 到可以工作的地步 我希望获得有关原因的信息 对于修复 请参阅下面我的评论 我有一个 Web 应用程序 它会动态地将 wav 文件 在超时后或按照用户的指示 重复下载到 iframe 中 以触发默认音频播
  • 套接字编程的最佳缓冲区大小是多少?

    我们正在使用 Net 和套接字 服务器正在使用Socket Sender bytes 方法 因此它只发送整个有效负载 另一方面 我们是消费数据的客户 Socket Receive buffer 在 Microsoft 和其他公司 的所有示例
  • 如何在 CodeIgniter 中连接到 SQL Server 数据库?

    如何在 CodeIgniter 中连接到 SQL Server 数据库 我目前正在 CodeIgniter 中启动一个应用程序 并且我想使用 SQL Server active group default active record TRU
  • 如何用jsvc启动tomcat?

    我试图用 jsvc 启动 tomcat 但它给了我这个奇怪的错误 JSVC re exec requires execution with an absolute or relative path using jsvc debug cp b
  • PHP 获取当前目录的名称

    我的网站上的文件夹中有一个 php 页面 我需要将当前目录的名称添加到变量中 例如 myVar current directory name 这可能吗 getcwd or dirname FILE 或 PHP5 basename DIR h
  • 调用未定义的方法 mysqli_stmt::get_result() 并安装 mysqlnd

    正如标题所示 我在运行 PHP 5 4 版的共享托管服务器上有可用的 mysqlnd 当我尝试调用 mysqli get result 函数时 出现此错误 我已经与托管提供商多次交谈 最近他们告诉我尝试运行 opt ntphp php54