first commit

This commit is contained in:
2026-08-20 07:56:32 +00:00
commit 89d84021f3
4 changed files with 337 additions and 0 deletions
+50
View File
@@ -0,0 +1,50 @@
<?php
// Indiquer au client que la réponse est du JSON
header('Content-Type: application/json; charset=utf-8');
// Paramètres de connexion MySQL
$host = 'localhost';
$db = 'GF';
$user = 'root';
$pass = 'sysadm-1963';
$charset = 'utf8mb4';
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
$options = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
try {
$pdo = new PDO($dsn, $user, $pass, $options);
// Requête UNION pour récupérer :
// - Les 40 derniers pour le CAC40
// - Les 35 derniers pour l'IBEX35
// - Les 30 derniers pour le DOWJONES
// (Triés à chaque fois par date_cours décroissante)
$sql = "
(SELECT * FROM cours_actions WHERE indice = 'CAC40' ORDER BY date_cours DESC LIMIT 40)
UNION ALL
(SELECT * FROM cours_actions WHERE indice = 'IBEX35' ORDER BY date_cours DESC LIMIT 35)
UNION ALL
(SELECT * FROM cours_actions WHERE indice = 'DOWJONES' ORDER BY date_cours DESC LIMIT 30)
";
$stmt = $pdo->query($sql);
$data = $stmt->fetchAll();
// Renvoyer les données sous format JSON propre
echo json_encode([
"status" => "success",
"count" => count($data),
"data" => $data
], JSON_PRETTY_PRINT);
} catch (\PDOException $e) {
http_response_code(500);
echo json_encode([
"status" => "error",
"message" => $e->getMessage()
]);
}