Chcete-li zkontrolovat tuto konkrétní chybu, musíte najít kód chyby
. Je to 1062 pro duplicitní klíč. Pak použijte výsledek z errno()
pro srovnání s:
mysqli_query('INSERT INTO ...');
if (mysqli_errno() == 1062) {
print 'no way!';
}
Poznámka ke stylu programování
Vždy byste se měli snažit vyhnout se používání magických čísel
(Já vím, byl jsem to já, kdo to uvedl v této odpovědi). Místo toho můžete přiřadit známý kód chyby (1062 ) na konstantu (např. MYSQLI_CODE_DUPLICATE_KEY ). To usnadní údržbu vašeho kódu jako podmínky v if příkaz je stále čitelný za několik měsíců, kdy význam 1062 se vytratil z paměti :)