如何解决“参数必须是实现 Countable 的数组或对象?” [复制]

2023-12-07

警告:count():参数必须是数组或对象 在 C:\xampp\htdocs\try\process.php 第 30 行实现 Countable。

这就是我的代码所说的。看起来很好,但是当我按编辑时,会显示此错误。我不明白。有人能指出第 30 行发生了什么吗?

这是我的 process.php

<?php
require("1password.php");
$id = 0;
$update = false;
$username='';
$password='';

 if (!session_id()) { session_start(); }
    $mysqli = new mysqli("localhost","root","","id7508046_isalon") or die(mysqli_error($mysqli));
    if(isset($_POST['save'])){
        $username = $_POST['username'];
        $password = $_POST['password'];
        $passwordHash = password_hash($password, PASSWORD_DEFAULT);
        $mysqli->query("INSERT INTO isalonusers (username, password) values ('$username', '$passwordHash')") or die($mysqli->error);
        $_SESSION['message'] = "New account saved!";
        $_SESSION['msg_type'] = "success"; 
        header("location: userlist.php");
    }
    if(isset($_GET['delete'])){
        $id = $_GET['delete'];
        $mysqli->query("DELETE FROM isalonusers WHERE user_id=$id") or die($mysqli->error());
        $_SESSION['message'] = "User Account Deleted!";
        $_SESSION['msg_type'] = "danger";
        header("location: userlist.php");
    }
    if(isset($_GET['edit'])){
        $id = $_GET['edit'];
        $update = true;
        $result = $mysqli->query("SELECT * FROM isalonusers WHERE user_id=$id") or die($mysqli->error());
        if(count($result)==1){
            $row = $result->fetch_array();
            $username = $row['username'];
            $password = $row['password'];
        }

    }
    if(isset($_POST['update'])){
        $id = $_POST['id'];
        $username = $_POST['username'];
        $password = $_POST['password'];
        $passwordHash = password_hash($password, PASSWORD_DEFAULT);
        $mysqli->query("UPDATE isalonusers SET username ='$username', password='$passwordHash' WHERE user_id=$id") or die($mysqli->error());
        $_SESSION['message'] = "User Account has been updated!";
        $_SESSION['msg_type'] = "warning";

        header("location: userlist.php");
    }

?>

事实上,你永远不需要计算任何东西。这一步只是多余的。

如果您稍微考虑一下,您可以简单地先获取数据,然后在条件中使用它。更重要的是,您必须使用参数化查询。所以代码应该是

$stmt = $mysqli->prepare("SELECT * FROM isalonusers WHERE user_id=?");
$stmt->bind_param("i", $id);
$stmt->execute();
$result = $stmt->get_result();
// here goes your problem with "count" 
$row = $result->fetch_array(MYSQLI_ASSOC)
if($row) {
    $username = $row['username'];
    $password = $row['password'];
}

你也不应该使用它可怕的练习or die

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

如何解决“参数必须是实现 Countable 的数组或对象?” [复制] 的相关文章

  • CURL 中的 data-urlencode 是什么意思?

    我搜索了很多个小时试图弄清楚 php curl 中的 data urlencode 是什么 我尝试过这个 但我认为这是不对的 xmlpost object1 file https www lob com goblue pdf 在文档中是 d
  • 标准化 UTF-8 到底是什么?

    The 重症监护室项目 http userguide icu project org transforms normalization 现在也有一个PHP库 http us php net manual en class normalize
  • 使用正则表达式提取两个短语之间的所有单词[重复]

    这个问题在这里已经有答案了 我正在尝试使用以下正则表达式提取两个短语之间的所有单词 b item W w W 0 2 1 one W w W 0 3 business b b item W w W 0 2 3 three W w W 0 3
  • ini_set 'session.gc_maxlifetime' 为 1 天

    If I do ini set session gc maxlifetime 86400 这是否意味着用户可以将浏览器留在同一页面 非活动状态 最多 1 天 而不必担心会话被垃圾收集并被注销 如果服务器配置不支持此功能会发生什么 它会给我一
  • Magento - 自定义支付模块

    这是一个非常普遍的问题 但这里是 我正在尝试在 Magento 中创建一个自定义支付模块 我创建了一个 常规 模块 可以连接到 Magento 事件 观察者模型 但是我如何告诉 Magento 将模块视为支付模块 以便它显示在管理后端和结账
  • 替换多余的空格

    我需要从应用程序中的玩家用户名中删除多余的空格 字母之间不止一次空格 并将其替换为单个空格 我不介意用户有一个空格 但我需要删除彼此相邻的多个空格 目前我是这样实现的 replace array array fill array array
  • 基于mysql表中唯一电子邮件地址的唯一代码?

    我有一个 mysql 表 它将存储用户电子邮件地址 每个地址都是唯一的 并且是主字段 和时间戳 我添加了另一列名为 unique code varchar 64 utf8 unicode ci 我非常感谢您提供的帮助 a 生成5位字母数字代
  • 从前端更改记录顺序

    我在编写下一个功能时遇到问题 我希望用户能够重新排列记录并更改 display order 值 我使用 Jquery UI 的可拖放功能来促进这一点 我可以看到如何简单地交换 display order 值 但我想为一条记录设置一个显示顺序
  • phpspreadsheet setCellValue 未写入

    我正在上传一个 Excel 文件 读取内容并使用 phpspreadsheet 写入一个新的 Excel 文件 我正在尝试创建一个 Excel 文件 我正在使用以下代码写入单元格 writesheet gt setActiveSheetIn
  • VB 脚本 Documents.Open 抛出 424 错误

    所以我有一个vbs脚本 Function test2open sSourceFile sPDFFile Dim wApp As Word Application Dim wDoc As Word Document logStream wri
  • 在 PHP 应用程序中实现插件的设计模式

    对于如何在 PHP 应用程序中实现插件有共识吗 我已经调查过观察者模式 http devzone zend com 1732 implementing the observer pattern with splobserver and sp
  • WordPress Tax_query“和”运算符未按预期运行

    我有一个自定义帖子类型image自定义分类法称为图片标签 它像类别一样分层 以下是可能使用的标签的一些示例 Structure id 25 House id 56 Skyscraper Nature Animal Plant id 41 因
  • 如何从表中选择所有偶数 id?

    我想从 MySQL 数据库的表中选择所有甚至帖子 ID 然后显示它们 我还想获取所有带有奇怪 id 的帖子并将它们显示在其他地方 我想使用 PHP 来完成此操作 因为这是我使用的服务器端语言 或者 我是否必须选择所有帖子 然后使用 Java
  • 如何在 Kohana 中包装 PHP 遗留代码?

    我有大量用 PHP 编写的遗留代码 这些代码不是在任何特定框架上编写的 而是主要是老式风格 即内联 PHP 然而 我的大部分新代码都是在 Kohana 3 1 X 框架上编写的 尽管 Kohana 确实允许遗留代码和 Kohana 文件在同
  • Laravel + AngularJS Nginx 路由

    我有以下问题 我需要配置Nginx 这样在任何URL用户访问时 它都会保留uri 例如domain com some url 但仅传递给 laravel 并让 Angular 处理路由 Route get function return v
  • CodeIgniter 路由问题以访问前端和后端文件夹

    我正在使用 CodeIgniter 我在控制器和视图中有前端和后端文件夹 我尝试了服务器步骤甚至检查了几乎所有解决方案 但我仍然无法访问它我的默认控制器 路线 php route default controller frontend Us
  • 显示产品中的类别名称和类别 ID - Laravel

    我已经找到了这个答案 但它对我不起作用 Laravel 按 id 显示类别 https stackoverflow com questions 39222584 laravel displaying categories by id 我无法
  • 登录页面上出现错误“警告:尝试访问 bool 类型值的数组偏移量”[重复]

    这个问题在这里已经有答案了 我目前正在为一个学校项目制作一个网站 并且正在制作一个用户注册系统 目前 注册部分与进入 MySQL 数据库的用户数据完美配合 但是 我的登录页面似乎已损坏 每次我尝试登录时都会收到以下错误 警告 尝试访问第 2
  • 带结束标记和不带结束标记的 XML(自结束标记)

    如何区别
  • MySQL 的 TEXT 类型的 Oracle 等效项

    Oracle 是否有与 MySQL 等效的列类型TEXT type 如果不是 那么通常如何存储较大的文本块 BLOB varchar 32767 如果重要的话 它是通过 PHP 访问 Oracle 10 历史背景是非常受欢迎的 Oracle

随机推荐

  • jQuery DataTables - 子行和“未定义不是函数”

    我正在努力将子行添加到数据表中 但对于在不同表和页面上完美运行的一行代码 出现 类型错误 未定义不是函数 有任何想法吗 HTML div class table responsive h2 class sub header Account
  • 限制滚动和缩放 Google Maps Android API v2

    我已经添加地面叠加层映射并希望限制该区域内的滚动和缩放 如何限制 Android 谷歌地图上的某些范围内的滚动 是否可以从 MapFragment 获取即时运动点 请帮我 约束相机 终于 作为一项功能添加到了发布的版本中谷歌播放服务 9 4
  • Sublime Text 3 sftp插件代理设置

    我已经为 Sublime Text 3 安装了 sftp 插件 是否可以使用代理配置 sftp 我正在寻找任何代理设置 有人知道这件事吗 Use ProxyCommand inside sftp flags 这样的事情对我有用 Destin
  • android NDK可以编译内核模块源吗?

    我想为 android 制作一个动态加载的内核模块 我不想安装linux 我只有cygwin和android NDK 是的 可以使用 NDK 构建内核模块 请注意 这在 Linux 系统上效果最好 据我所知 Linux x86 64 是受支
  • 如何在Scheme中计算一个数的各位数字之和?

    我想计算Scheme中一个数字的数字之和 它应该像这样工作 gt sum of digits 123 6 我的想法是改变数字123串起来 123 然后将其转换为列表 1 2 3 然后使用 apply 1 2 3 to get 6 但不幸的是
  • 在 PHP 中从 MySQL 中提取 BLOB 图像数据

    我正在阅读一些关于如何将图像作为二进制上传到数据库而不是将它们放在服务器本身上的教程 我让它像这样工作 PHP image chunk split base64 encode file get contents tmpfile mysql
  • 批评我的堆调试器

    我编写了以下堆调试器 以演示内存泄漏 双重删除和错误形式的删除 即尝试使用以下命令删除数组 delete p代替delete p 给初级程序员 我很想从强大的 C 程序员那里得到一些反馈 因为我以前从未这样做过 而且我确信我犯过一些愚蠢的错
  • 当启用 Visual-line-mode 时,如何使用 hl-line-mode 仅突出显示一 (1) 行

    有没有人有替代方案或修改方案hl line mode这样只有一 1 条水平线才会突出显示visual line mode已启用 目前 整条自动换行的行都会突出显示 即使它可能跨越几条水平线 我正在使用 Emacs Trunk 的最新版本 您
  • JavaScript Promise 是异步的吗?

    只是一个简单的澄清问题 JavaScript 是Promise异步 我读了很多关于Promise和异步编程 即ajax请求 如果Promise不是异步的 我们如何做到这一点 例如 我有一个函数来包装一个函数f带参数数组args里面一个Pro
  • 具有 DateTimeField 和 timedelta 默认值的 Django 迁移

    我在设置默认值时遇到问题datetime在我的 Django 模型之一上 from django db import models from django utils import timezone class MyModel models
  • System.Drawing 的撤消按钮?

    我正在制作一个图像编辑器 有点为了自己的享受 并且想知道如何制作一个撤消按钮来撤消我上次所做的绘画 我想知道我会如何处理这个问题 教程或示例代码会很好 或者至少能指引我正确的方向 Thanks 呵呵 撤消实际上并不像听起来那么难 这里的神奇
  • 比较双精度数返回 false

    我的数据库中有三个数字 想要在 if 语句中比较它们 我有一个简单的 convert 函数 仅返回双精度数 Public Function RetDbl ByVal obj As Variant As Double On Error Res
  • 设置在 Foreach 循环中默认选中的 RadioButtonFor()

    我有一个奇怪的行为使用 Html RadioButtonFor扩展方法 我正在使用 foreach 循环创建 RadioButton 和 By 三元运算符的列表 我试图将尊重条件的人设置为检查 但它总是最后一个被检查的人 我搜索了类似的问题
  • 如何创建类似于 Twitter 应用程序位置切换按钮的切换按钮?

    我应该使用什么自定义按钮 可以左右滑动 例如 Android 的 Twitter 应用程序上的打开 关闭位置按钮 如下图所示 还有创建此类按钮的任何链接或指南 Thanks 使用一个简单的切换按钮结合一个可绘制状态列表设置为其背景 的一个样
  • 如何在R包RecordLinkage中使用compare.linkage——意外的输出

    我正在使用R包RecordLinkage中的compare linkage函数 得到的结果我知道是错误的 所以我知道我误解了一些东西 我正在使用适用于 x64 Windows 的 R 3 2 3 我对 Stata 非常熟悉 但对 R 不太熟
  • 在 Powershell 中计算日志结果

    我有一项任务 必须从 Windows 安全日志文件中提取 审核失败 和 审核成功 等信息 并计算每个 ex 的结果 总尝试次数 成功次数 失败次数和最常见的事件 ID 我将 csv 保存到桌面以获取信息 但我不确定如何获取每个文件的运行总计
  • 有关 Django 中字段类型的问题

    我是 Django 新手 我想在 Django 中制作一个用户注册表单 创建模型时 我为密码字段提供了 fieldtype gt PasswordField 但是当我将此模型运行到终端时出现错误 password models Passwo
  • Angular 2 - 如何将数据传递给子组件而不渲染子组件两次?

    我想将一个对象从 app component 传递到子组件 home component 我是否使用了错误的路由方式 这就是为什么我想要将对象传递给的子组件被渲染两次 我怎样才能避免它 我想这也可能是第二次渲染组件时该对象未定义的原因 我已
  • Magento 1.9.2.1 自定义模块 404

    我最近安装了 Magento 的干净版本 我有一个自定义模块 它在旧模块上运行得很好 但在新模块上却不起作用 都是 1 9 2 1 它显示在 系统 gt 配置 gt 高级 gt 高级 下 每当我尝试调用 mydomain index php
  • 如何解决“参数必须是实现 Countable 的数组或对象?” [复制]

    这个问题在这里已经有答案了 警告 count 参数必须是数组或对象 在 C xampp htdocs try process php 第 30 行实现 Countable 这就是我的代码所说的 看起来很好 但是当我按编辑时 会显示此错误 我