Bouts de Codes PHP

Importer un fichier .sql dans une base MySQL

Information sur le code source PHP

Ecrit par :  nixos777
Enregistrement le 21 Avril 2008 - Vu 4451 fois
Impression: Imprimer le code
Pas encore
de vote

Description du code source

Information sur le code source

Vous pourriez avoir besoin d'une fonction pour importer un fichier entier .sql dans votre base de données MySQL. Cette fonction devrait vous y aider.

Code Source



.01
.02
.03
.04
.05
.06
.07
.08
.09
.10
.11
.12
.13
.14
.15
.16
.17
.18
.19
.20
.21
.22
.23
.24
.25
.26
.27
.28
.29
.30
.31
.32
.33
.34
.35
.36
.37
.38
.39
.40
.41
.42
.43
.44
.45
.46
.47
.48
.49
.50
.51
.52
.53
.54
.55
.56
.57
.58
.59
.60
.61
.62
.63
.64
.65
.66
.67
 

<?php
/******************************************************************************/
/*                                                                            */
/*                       __        ____                                       */
/*                 ___  / /  ___  / __/__  __ _____________ ___               */
/*                / _ \/ _ \/ _ \_\ \/ _ \/ // / __/ __/ -_|_-<               */
/*               / .__/_//_/ .__/___/\___/\_,_/_/  \__/\__/___/               */
/*              /_/       /_/                                                 */
/*                                                                            */
/*                                                                            */
/******************************************************************************/
/*                                                                            */
/* Titre          : Importer un fichier .sql dans une base MySQL              */
/*                                                                            */
/* URL            : http://www.phpsources.org/scripts373-PHP.htm              */
/* Auteur         : nixos777                                                  */
/* Date édition   : 21 Avril 2008                                             */
/*                                                                            */
/******************************************************************************/


function mysql_import_file($filename, &$errmsg) 
{ 
   // lecture du fichier
   $lines file($filename); 

   if(!$lines)  {
      $errmsg "cannot open file $filename"; 
      return false; 
   } 

   $scriptfile false; 

   /* Get rid of the comments and form one jumbo line */ 
   foreach($lines as $line)   {
      $line trim($line); 

      if(!ereg('^--'$line)) {
         $scriptfile.=" ".$line; 
      } 
   } 

   if(!$scriptfile) {
      $errmsg "no text found in $filename"; 
      return false; 
   } 

   /* Split the jumbo line into smaller lines */ 

   $queries explode(';'$scriptfile); 

   /* Run each line as a query */

   foreach($queries as $query) {
      $query trim($query); 
      if($query == "") { continue; } 
      if(!mysql_query($query.';')) 
      { 
         $errmsg "query ".$query." failed"; 
         return false; 
      } 
   } 

   // retour true si la fonction reussie ^^
   return true; 
} 

Fonctions du code source

Fonctions php / mysql PHP

  • file : Lit le fichier et renvoie le résultat dans un tableau - (PHP 4, PHP 5)
  • trim : - (PHP 4, PHP 5)
  • ereg : Expression rationnelle standard - (PHP 4, PHP 5)
  • explode : Coupe une chaîne en segments - (PHP 4, PHP 5)
  • mysql_query : Envoie une requête à un serveur MySQL - (PHP 4, PHP 5, PECL mysql:1.0)

Commentaires (2)
Nouveau message Invité
le 11 Mai 2009 à 16:25:00
Ya une belle boulette quand meme dans le script.... tu en fait quoi des trigger , procedure, fonction .... qui traine dans les fichiers ? ils comportent des ; qui ne doivent pas sortir de leur contexte (je parle des begin/end)
Nouveau message Invité
le 24 Juin 2009 à 16:59:00
Il y a aussi un problème si certains champs contiennent des ;

Poster un commentaire

:P :)
:wink: :lol:
:surprised: :confused:
:idea: :no:
Taille du texte:
Couleur:
 
Code de sécurité
Offres d'emploi
Librairie

Langages de programmation

La librairie est ouverte à tous et elle est accès principalement sur les langages PHP et MySQL. Vous trouverez aussi d'autres langages de programmation tel que le CSS, HTML, AJAX, ASP.. Plus de 300 références facilement accessibles. Visiter

  • Ergonomie Web
  • PHP 5 & SQL
  • PHP et MySQL - Liste des principales fonctions et syntaxe détaillée
  • PHP et MySQL pour les nuls
  • HTML : Liste des principales balises - Regroupement thématique - Caractères spéciaux - Syntaxe détaillée - 140 couleurs
  • XHTML et CSS - Les nouveaux standards du code source [2ième édition]
  • PHP et MySQL
  • Formation à HTML
  • XHTML
  • PHP 5 : Développer un site Web dynamique et interactif