PDOException:SQLSTATE [HY093]:参数无效

时间:2017-10-15 10:26:53

标签: php mysql pdo

我想在数据库中更新时出错。

  

致命错误:未捕获PDOException:SQLSTATE [HY093]:参数无效   number:绑定变量的数量与令牌的数量不匹配   C:\ xampp \ htdocs \ unija \ aids \ admin \ project.php:85堆栈跟踪:#0   C:\ XAMPP \ htdocs中\神奇宝典\助剂\管理员\ project.php(85):   抛出PDOStatement-> execute()#1 {main}   第85行的C:\ xampp \ htdocs \ unija \ aids \ admin \ project.php

$stmt = $DB_con->prepare('UPDATE Projekti SET NaslovSrpski=:naslovs, NaslovEngleski=:naslove, Nosilac=:nosilac, Partneri=:part, Teritorija=:ter, Vrednost=:vrednost, Donator=:donator, TrajanjeOD=:trajanjeod, TrajanjeDO=:trajanjedo, TekstSrpski=:teksts, TekstEngleski=:tekste, Slika=:upic WHERE ID=:uid');
      $stmt->bindParam(':naslovs',$NaslovSrpski);
      $stmt->bindParam(':naslove',$NaslovEngleski);
      $stmt->bindParam(':nosilac',$Nosilac);
      $stmt->bindParam(':part',$Partneri);
      $stmt->bindParam(':ter',$Teritorija);
      $stmt->bindParam(':vrednost',$Vrednost);
      $stmt->bindParam(':donator',$Donator);
      $stmt->bindParam(':trajanjeod',$TrajanjeOD);
      $stmt->bindParam(':trajanjedo',$TrajanjeDO);
      $stmt->bindParam(':teksts',$TekstSrpski);
      $stmt->bindParam(':tekste',$TekstEngleski);
      $stmt->bindParam(':upic',$userpic);

   if($stmt->execute())
      {
        $successMSG = "Uspesno ste dodali projekat!";
        header("index.php"); // redirects image view page after 5 seconds.
      }
      else
      {
        $errMSG = "error while inserting....";
      }

此处的完整代码:http://gamers.rs/php.txt

1 个答案:

答案 0 :(得分:1)

你忘了一个绑定:

$stmt->bindParam(':uid',$id);

希望它有所帮助:D