Rapport d'erreurs dans les instructions préparées MySQLi
Lorsque vous travaillez avec MySQLi, il est crucial de comprendre le rapport d'erreurs. Cet article explore les nuances de la valeur de retour de l'instruction « prepare » et explore la nécessité d'une gestion supplémentaire des erreurs.
La valeur de retour de « prepare » indique simplement si la préparation de l'instruction SQL a réussi. Pour détecter les erreurs d’exécution, des mesures supplémentaires sont nécessaires. Le remplacement de l'appel « execute » par le code suivant garantit que les erreurs d'exécution sont signalées :
if($stmt_test->execute()) { $errorflag = true; }
De plus, après l'exécution de l'instruction, la vérification de « errno » et la réinitialisation de « errorflag » s'il est différent de zéro permettent une capture complète des erreurs :
if($stmt_test->errno) { $errorflag = true; }
Cependant, une approche plus concise et complète consiste à activer le rapport d'erreurs en utilisant la ligne suivante dans la connexion code :
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
Ce paramètre garantit que chaque erreur est signalée comme une exception PHP, éliminant ainsi le besoin de vérifications manuelles méticuleuses des erreurs.
$stmt = $mysqli->prepare("INSERT INTO testtable VALUES (?,?,?)"); $stmt->bind_param('iii', $x, $y, $z); $stmt->execute();
Avec une configuration appropriée du rapport d'erreurs PHP, les erreurs sera affiché ou enregistré selon les paramètres de l'environnement de développement ou de production.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!