mysql // ----------------------------------------------------- // * @link http://www.codexworld.com // ----------------------------------------------------- try { // Connexion PDO à la base de données $dsn = "mysql:host=$host;dbname=$bdd;charset=utf8"; $db = new PDO($dsn, $user, $pass); $db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); // Gestion des erreurs // Variable temporaire pour stocker la requête en cours $templine = ''; // Lecture du fichier ligne par ligne $lines = file($filename); $error = ''; // Variables pour suivre les lignes traitées $z = 0; $x = 0; // Boucle à travers chaque ligne du fichier foreach ($lines as $line) { // Ignorer les commentaires et lignes vides if (substr($line, 0, 2) == '--' || $line == '') { continue; } // Ajouter cette ligne au segment en cours $templine .= $line; $x++; // Si la ligne se termine par un point-virgule, c'est la fin de la requête if (substr(trim($line), -1, 1) == ';') { // Exécuter la requête try { $db->exec($templine); // Utilisation de exec() pour les requêtes sans résultat } catch (PDOException $e) { $error .= 'Erreur lors de l\'exécution de la requête "' . $templine . '": ' . $e->getMessage() . '

'; } // Réinitialiser la variable temporaire $templine = ''; $z++; } } // Message de statut $admMsg .= 'Lignes traitées : ' .$z. ', sur ' .$x. ' lignes'; } catch (PDOException $e) { // En cas d'erreur de connexion PDO $error .= 'Erreur de connexion à la base de données : ' . $e->getMessage(); } ?>