여기서 내가 잘못한 것을 매우 혼란 스럽습니다.mySQL PDO 오류
내 PDO 문
$sql = "INSERT INTO my_tb (stud_user, stud,pass, stud_salt) VALUES (:username, :password, :salt)";
$stmt = $db->prepare($sql);
$stmt->execute(array(':username' => $student_username,':password' => $student_password,':salt' => $student_salt));
내 DB 스키마는
CREATE TABLE IF NOT EXISTS `my_tb` (
`stud_id` int(11) NOT NULL AUTO_INCREMENT,
`stud_user` varchar(50) NOT NULL,
`stud_pass` varchar(50) NOT NULL,
`stud_salt` varchar(50) NOT NULL,
PRIMARY KEY (`stud_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
나는 값이 있는지 확인하기 위해 삽입하기 전에 세 바르 에코. 나는 이것을 실행할 때마다, 나는 항상이 오류에 결국 :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[21S01]: Insert value list does not match column list: 1136 Column count doesn't match value count at row 1' in C:\Apache\htdocs\path\to\file.php:47 Stack trace: #0 C:\Apache\htdocs\path\to\file.php(47): PDOStatement->execute(Array) #1 {main} thrown in C:\Apache\htdocs\path\to\file.php on line 47
. 나는 그 쉼표를 알아 채지 못했습니다. 큰 감사 @ TheOx. –