עד היום השתמשתי בקוד הזה:
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); // הפעלת זריקת חריגות אוטומטית לשגיאות
try {
$conn = new mysqli($host, $username, $password, $dbname);
$conn->set_charset("utf8mb4");
$sql = *****;
$stmt = $conn->prepare($sql);
$stmt->bind_param("si", $_REQUEST['***'], $_REQUEST['***']);
if ($stmt->execute()) {
logRequest('/tmp/request_log.txt', "ok - **** בהצלחה");
header('Content-Type: application/json; charset=utf-8');
echo json_encode([
"status" => "success",
"message" => "*** בהצלחה"
], JSON_UNESCAPED_UNICODE);
} else {
logRequest('/tmp/request_log.txt', "error - שגיאה");
respondError("שגיאה ב***");
}
// $stmt->close();
// $conn->close();
} catch (mysqli_sql_exception $e) {
logRequest('/tmp/request_log.txt', "Database Connection Failed: " . $e->getMessage());
respondError("שגיאה");
}
finally {
if (isset($stmt)) {
$stmt->close();
}
$conn->close();
}
האם יש בזה בעיה? בצורת הסגירה?