Článek je výborný, jedna věc mě vedla k zamyšlení. Nezdařený INSERT vyvolá chybu a podle čísla určujeme, zda je to "ta očekáváná chyba" nebo nějaká jiná. To nemá ten správný šmrnc.
Není elegantnější přidat klíčové slovo IGNORE (viz) a úspěch testovat přes mysql_affected_rows() ?
No, kódu to je stejně a IGNORE má i další side-effecty (např. konverze dat, které by způsobily chybu, se také ignorují), navíc se tyto side-effecty mohou do budoucna zvětšovat.
Ale postřeh je to dobrý, o IGNORE jsem po pravdě řečeno ani nevěděl.