Lors de l'insertion dans une table avec un champ d'incrémentation automatique, le champ d'incrémentation automatique lui-même ne doit pas être spécifié du tout.
Query("INSERT INTO prod_categorie (categorieID, parentID) VALUES (?, ?)", array($chkParent, $txtParentCategorie));
^^^^^^^^^^^ ^ ^^^^^^^^^^
Devrait être juste
Query("INSERT INTO prod_categorie (parentID) VALUES (?)", array($txtParentCategorie));
Je viens d'ajouter comme réponse à la discussion des commentaires pour permettre d'accepter et de terminer la question.