Tôi nghĩ điều này có thể là do bạn đã xác định mỗi liên kết hai lần trong câu lệnh, ví dụ::firstname xuất hiện trong VALUES cũng như TRÊN CẬP NHẬT KHÓA DUPLICATE mệnh đề.
Bạn chỉ chuyển 8 ràng buộc cho $ stmt-> thực thi nhưng PDO đang tìm kiếm 16.
Bạn có thể thử đặt tên cho chúng hơi khác trong TRÊN CẬP NHẬT KHÓA KÉO DÀI mệnh đề cung cấp cho bạn một truy vấn, chẳng hạn như
INSERT INTO am_administrator (firstName, lastName, username, password, email, isSuperUser, dateCreate, dateLastModified) GIÁ TRỊ (:firstName,:lastName,:username,:password,:email,:isSuperUser,:dateCreate,:dateLastModified) BẬT CẬP NHẬT TỪ KHÓA DUPLICATE firstName =:update_firstName, lastName =:update_lastName, username =:update_username, password =:update_password, email =:update_email, isSuperUser =:update_isSuperUser, dateCreate =:update_date_dified, dateLastModified =: