Votre question semble assez vague - soit vous voulez ignorer vos violations de contraintes d'intégrité, soit vous voulez qu'elles soient un signal indiquant "plus d'insertions".
En plus de la réponse avec insert ignore
solution - lorsque vous exécutez votre requête et obtenez SQLSTATE[23000]: Integrity constraint violation
erreur, cela signifie que PDO lève une exception. Si vous ne catch
ça, votre script est tué. Si vous ne voulez pas qu'il soit tué, encapsulez votre code DB dans la construction try-catch, c'est-à-dire :
try {
// code here
$insertItem = $db->query("
INSERT INTO cart (userid, itemid)
VALUES (:userid, :itemid)",
array("userid"=>"175", "itemid"=>"12")
);
// more code here
} catch(Exception $e) {
// handle exception -
// find out if it is caused by integrity contraints violations
// and if it is - merely go further
// otherwise do something else, like re-throwing your exception
}
HTH