ここでの問題は、INSERTを実行したことがないことです。 これを追加します: $stmt -> execute(); エラーがないため、エラーが返されないのはこのためです。何か「欠けている」;-) 参照: http://php.net/pdo.prepared-statements