Dev #9
+7
-2
@@ -37,13 +37,17 @@ load_env();
|
|||||||
/**
|
/**
|
||||||
* Get a PDO connection to the database.
|
* Get a PDO connection to the database.
|
||||||
*/
|
*/
|
||||||
function get_db_connection(): ?PDO {
|
function get_db_connection() {
|
||||||
static $pdo = null;
|
static $pdo = null;
|
||||||
|
|
||||||
if ($pdo !== null) {
|
if ($pdo !== null) {
|
||||||
return $pdo;
|
return $pdo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!class_exists('PDO')) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
$url = getenv('DATABASE_URL');
|
$url = getenv('DATABASE_URL');
|
||||||
if (!$url) {
|
if (!$url) {
|
||||||
return null;
|
return null;
|
||||||
@@ -66,9 +70,10 @@ function get_db_connection(): ?PDO {
|
|||||||
$pdo = new PDO($dsn, $user, $pass, [
|
$pdo = new PDO($dsn, $user, $pass, [
|
||||||
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
|
||||||
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
|
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
|
||||||
|
PDO::ATTR_TIMEOUT => 3,
|
||||||
]);
|
]);
|
||||||
return $pdo;
|
return $pdo;
|
||||||
} catch (PDOException $e) {
|
} catch (\Exception $e) {
|
||||||
error_log("Database connection failed: " . $e->getMessage());
|
error_log("Database connection failed: " . $e->getMessage());
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-2
@@ -38,7 +38,7 @@ function init_db() {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|||||||
} catch (PDOException $e) {
|
} catch (\Exception $e) {
|
||||||
error_log("DB Init Error: " . $e->getMessage());
|
error_log("DB Init Error: " . $e->getMessage());
|
||||||
}
|
}
|
||||||
|
The default value for 'description' is an empty string. While functional, for internationalization, it's often beneficial to provide a placeholder string like The default value for 'description' is an empty string. While functional, for internationalization, it's often beneficial to provide a placeholder string like `null` or a specific marker (e.g., `__('default_description')`) that can be explicitly translated or identified as missing. This can help in debugging or ensuring all fields are eventually populated.
|
|||||||
}
|
}
|
||||||
|
Similar to the 'description', an empty string for 'category' might be better represented by Similar to the 'description', an empty string for 'category' might be better represented by `null` or a translatable placeholder to distinguish between an intentionally empty category and a missing one.
|
|||||||
@@ -70,7 +70,7 @@ function load_recipes_local(): array {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (PDOException $e) {
|
} catch (\Exception $e) {
|
||||||
error_log("Failed to load recipes from DB: " . $e->getMessage());
|
error_log("Failed to load recipes from DB: " . $e->getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user
This helper function provides a clean default structure for internationalized recipe data, ensuring consistency.