Placeholders are layed wrong, they need to be in single array. Use $sql = "INSERT INTO {customers} (first_name,last_name,email_addr,password) VALUES(:fName, :lName, :email , :cpwd)"; db_query($sql, array( ':fName' => $form_state['values']['fName'], ':lName' => $form_state['values']['lName'], ':email' => $form_state['values']['email'], ':cpwd' => $form_state['values']['cpwd'], ), );