Добавлено логирование и исправлены некоторые ошибки в классах

This commit is contained in:
2024-08-16 13:44:49 +03:00
parent f06eee3e95
commit 8462c1907b
9 changed files with 1604 additions and 290 deletions

View File

@ -19,18 +19,21 @@ class Database
$password,
[PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
);
print("Подлючено успешно!\n");
$log = date('Y-m-d H:i:s') . ' Подлючение к успешно!';
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
} catch (PDOException $e) {
echo "Ошибка подключения:". $e->getMessage() . "\n";
$log = date('Y-m-d H:i:s') . " Ошибка подключения:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
}
}
public function __destruct()
{
echo "Подключение прервано!\n";
$log = date('Y-m-d H:i:s') . ' Подлючение прервано!';
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
}
public function executeQuery(string $sql, array $params) : array|null
public function selectQuery(string $sql, array $params = []) : array
{
try {
$stmt = $this->pdo->prepare($sql);
@ -41,9 +44,32 @@ class Database
$stmt->execute();
$array = $stmt->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
echo "Ошибка запроса: " . $e->getMessage() . "\n";
$log = date('Y-m-d H:i:s') . " Ошибка запроса:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
} finally {
return $array;
}
}
public function insertQuery(string $sql, array $params)
{
try {
$stmt = $this->pdo->prepare($sql);
for ($i = 0; $i < count($params); $i++) {
$stmt->bindParam(":spec_code".$i+1, $params[$i]['spec_code']);
$stmt->bindParam(":spec_name".$i+1, $params[$i]['spec_name']);
$stmt->bindParam(":edu_forms".$i+1, $params[$i]['edu_forms']);
$stmt->bindParam(":edu_level".$i+1, $params[$i]['edu_level']);
$stmt->bindParam(":contingent".$i+1, $params[$i]['contingent']);
$stmt->bindParam(":org_id".$i+1, $params[$i]['org_id']);
$stmt->bindParam(":spec_id".$i+1, $params[$i]['spec_id']);
}
$stmt->execute();
$log = date('Y-m-d H:i:s') . " Запрос выполнен успешно!";
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
} catch (PDOException $e) {
$log = date('Y-m-d H:i:s') . " Ошибка запроса:" . $e->getMessage();
file_put_contents(__DIR__ . '/../database.log', $log . PHP_EOL, FILE_APPEND);
}
}
}