当前位置: 首页 > 知识库问答 >
问题:

更新错误。SQLSTATE[HY093]:无效的参数号

阮雅达
2023-03-14
require_once '../app/config.php';

if (!empty($_POST['update'])) {

 $sql = "UPDATE web_usr SET 
               email = :email, 
               fname = :fname, 
               lname = :lname, 
               web_usr = :web_usr,
               usr_note = :usr_note, 
               avatar = :avatar, 
               usr_skill = :usr_skill 
               WHERE id = :id";


 $stmt = $conn->prepare($sql);

 $stmt->bindParam(':email', $email, PDO::PARAM_STR);
 $stmt->bindParam(':fname', $fname, PDO::PARAM_STR);
 $stmt->bindParam(':lname', $lname, PDO::PARAM_STR);
 $stmt->bindParam(':web_usr', $web_usr, PDO::PARAM_STR);
 $stmt->bindParam(':usr_note', $usr_note, PDO::PARAM_STR);
 $stmt->bindParam(':avatar', $avatar, PDO::PARAM_STR);
 $stmt->bindParam(':usr_skill', $usr_skill, PDO::PARAM_STR);

 //Execute the statement and insert the new account.
 $result = $stmt->execute();

 //If the signup process is succesful.
 if($result) {
   echo "Succesed";
 } else {
   echo "gagal";
 }
}

致命错误:C:\xampp\htdocs\otakutangerang_admin\C_action.php:33堆栈跟踪:#0 C:\xampp\htdocs\otakutangerang_admin\C_action.php(33):PDO语句中出现未捕获的异常“PDOException”,并显示消息“SQLSTATE[HY093]:参数编号无效”-

共有1个答案

卜弘文
2023-03-14

你也错过了

$stmt->bindParam(':id', $id, PDO::PARAM_INT );
 类似资料:
  • 问题内容: 上面的代码因以下错误而失败 SQLSTATE [HY093]:参数号无效:参数未定义 虽然什么时候才执行? 这里发生了什么? 问题答案: 您收到的此错误: SQLSTATE [HY093]:参数号无效:参数未定义 是因为&中的元素数不相同或包含1个以上的元素。 如果包含多个元素,则插入操作将失败,因为query()中仅引用了1个列名 如果&不包含相同数量的元素,则由于查询期望x参数,但

  • 问题内容: 尝试运行以下功能时,出现错误“ SQLSTATE [HY093]:无效的参数号”: 我觉得这很简单,我只是没有抓住。有任何想法吗? 问题答案: 尝试: 和 文档摘录(http://php.net/manual/zh/pdo.prepare.php): 调用PDOStatement :: execute()时,对于要传递给语句的每个值,必须包含一个唯一的参数标记。您不能在准备好的语句中两

  • 问题内容: $ fields是一个数组,打印后得到的值如下: 我从数据类中调用update函数,如下所示: 但是我得到了错误: 警告:PDOStatement :: execute():SQLSTATE [HY093]:无效的参数编号:在…文件文本中未定义参数 我检查了其他几个类似的线程,但我想这里缺少一些基本概念,因为我仍然找不到答案。据我所知,数组中有7个和7个项目,如果我定义了所有值,则可以

  • 我已经和这个打了几天了。。。 刚连接到数据库- 叫来- 但我只是 PHP致命错误:未捕获异常“PDOException”,消息为“SQLSTATE[HY093]:无效参数编号:未定义参数” 在执行行上。 如果它是相关的,表是这样定义的: 我对PDO还比较陌生,尤其是BLOB,所以我可能在做一些很明显很愚蠢的事情,但它现在正在逃避我! 谢谢 编辑:我注意到prepare中对引号:comment的引用

  • 问题内容: 使用PDO更新数据库时出现错误。我是PDO的新手,所以问题可能很小,我只是不明白。 关于错误的有趣的是,该命令可以正常运行,并且数据库确实得到了更新。 但是它仍然向我返回错误。 码: 错误: 错误更新内容:SQLSTATE [HY000]:一般错误 我真的不知道问题可能在哪里,因为它非常怪诞,而且我无法找到遇到相同问题的任何人。 问题答案: 您不使用fetchAll(),如 与更新或插

  • 问题内容: 关闭。 此问题不符合堆栈溢出准则。它当前不接受答案。 想改善这个问题吗? 更新问题,使其成为Stack Overflow 的主题。 6年前关闭。 我收到SQLSTATE [HY093]错误:无效的参数编号:绑定变量的数量与以下comments.php中第102行的令牌数量不匹配: 问题答案: 您没有在此处绑定所有绑定 您已经声明了一个名为:numRows的绑定,但实际上从未绑定任何东西