出于安全原因,我尝试使用 PHP/MySQL 处理或捕获可能的错误,并想知道我是否做得对。第一种情况:我将它用作函数,并在需要数据库连接时始终调用它。第二种情况:我不知道如何处理。我把所有准备好的语句放在if条件中,但这很尴尬。那么$stmt->execute呢?这也可能失败,并且在 if 条件下处理这个问题真的会让人困惑。我希望有更好的方法去。
第一的:
function pdo () {
try {
$pdo = new PDO('mysql:host=localhost;dbname=dbname', 'user', 'pw');
}
catch(PDOException $e) {
header("Location: handle_error.php");
exit;
}
return ($pdo);
}
第二:
if ($stmt = $pdo->prepare("SELECT a FROM b WHERE c = :c")) {
$stmt->execute(array(':c' => $c));
$result = $stmt->fetch();
echo 'All fine.';
}
else {
echo 'Now we have a problem.';
}
牧羊人nacy