Žádná z odpovědí zde není špatná. Ale ve skutečnosti jsou všechny tři kombinace skutečnou odpovědí. Rozhodně byste měli nastavit
$this->pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
jak řekl Cerad .
Od nynějška je každý jednotlivý problém ohledně čehokoli týkajícího se databáze vyvolán přes výjimku typu PDOException
. Jen nemusíte házet vlastní Exception
jak řekl ladar protože je to zbytečné. Stačí si vzít ladar kód a převeďte jej na
...
$data = array();
$model = new BlogModel;
try{
$model->save(2,'test');
$data['result']['message'] = 'Settings saved';
$data['result']['status'] = 'success';
}catch(PDOException $e){
$data['result']['message'] = 'Could not save the settings';
$data['result']['status'] = 'error';
}
A NEVYHAZUJTE nic sami.
Velmi pěkným způsobem ladění dotazů PDO je použití skriptu catch spojeného pomocí Basic které najdete zde ještě jednou.
Kombinací těchto věcí dohromady získáte flexibilní, čistý a snadno laditelný způsob, jak zachytit všechny chyby, které by mohly nastat.