setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo '
Connexion MySQL réussie
';
// Créer la base de données si elle n'existe pas
$pdo->exec("CREATE DATABASE IF NOT EXISTS $dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci");
echo '
Base de données créée/vérifiée : ' . $dbname . '
';
// Se connecter à la base de données
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Lire et exécuter les fichiers SQL
$sqlFiles = [
'database/schema.sql',
'database/seeds.sql',
'database/incidents_schema.sql',
'database/incidents_seeds.sql',
'database/planning_schema.sql',
'database/planning_seeds.sql'
];
foreach ($sqlFiles as $file) {
if (file_exists($file)) {
$sql = file_get_contents($file);
// Diviser par les délimiteurs de requêtes
$statements = array_filter(explode(';', $sql));
foreach ($statements as $statement) {
$statement = trim($statement);
if (!empty($statement)) {
try {
$pdo->exec($statement);
} catch (PDOException $e) {
// Ignorer les erreurs "table exists" et similaires
if (strpos($e->getMessage(), 'already exists') === false) {
echo '
Avertissement dans ' . basename($file) . ': ' . $e->getMessage() . '
';
}
}
}
}
echo '
Fichier importé : ' . basename($file) . '
';
} else {
echo '
Fichier non trouvé : ' . basename($file) . '
';
}
}
echo '
Installation terminée avec succès !
';
echo '
Accéder à l\'application
';
} catch (PDOException $e) {
echo '
Erreur : ' . $e->getMessage() . '
';
}
} else {
?>