Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
3026 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  importation d'une BDD

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

importation d'une BDD

n°1736059
clem1138
Posté le 23-05-2008 à 10:21:36  profilanswer
 

est il possible d'importer dans une BDD les lignes contenues dans un fichier excel??
Il doit falloir le meme nombre de colonne/entité dans chaque je pense mais pas de pb...
comment faire ?? et comment mettre la BDD a jour en ne modifiant que le document excel??
   

mood
Publicité
Posté le 23-05-2008 à 10:21:36  profilanswer
 

n°1736072
babasss
Posté le 23-05-2008 à 10:34:26  profilanswer
 

clem1138 a écrit :

est il possible d'importer dans une BDD les lignes contenues dans un fichier excel??
Il doit falloir le meme nombre de colonne/entité dans chaque je pense mais pas de pb...
comment faire ?? et comment mettre la BDD a jour en ne modifiant que le document excel??


Quel SGBD ? Quelle est la finalité ?


---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm
n°1736075
clem1138
Posté le 23-05-2008 à 10:36:43  profilanswer
 

ben justement le pb c'est que ca concerne mysql..et nn pas access...Et c'est pour un organigramme parce que mon algo ne marche qu'avec un tableau excel

n°1736088
infoman64
JE SUIS LA POUR TOI MON AMI
Posté le 23-05-2008 à 10:48:12  profilanswer
 

voici ma fonction pour lire mon fichier csv(il faut que tu transforme ton fichier excel en csv)

Code :
  1. function read_csv( $filename, $separateur)      // transfert le fichier dans un tableau
  2. {
  3. if ( $FILE=fopen($filename,"r" ) )               // ouverture du fichier
  4. {
  5.  while ($ARRAY[]=fgetcsv($FILE,1024,$separateur));      // lire ligne par ligne et coupe colonne par colonne
  6.  fclose($FILE) ;                              // ferme le fichier
  7.  array_pop($ARRAY);                                    // efface la derniere ligne
  8.  return ($ARRAY) ;                              // renvoie le tableau
  9. }else{ /* le fichier n'existe pas */
  10.       echo "Fichier introuvable !<br>Importation stoppée.";
  11.       exit();
  12.  }
  13. }


 
apres il suffit que tu fasse l'insertion dans ta bd,  
 

Code :
  1. par exemple si tu as ton fichier
  2. 15 paris
  3. 20 marseille
  4. for($i=0;$i<count($array);$i++){
  5. insert into tatable (nombre, ville) values ($array[$i][0],$array[$i] [1])
  6. }


bon j'espere que tu comprendra

Message cité 1 fois
Message édité par infoman64 le 23-05-2008 à 11:06:31
n°1736090
babasss
Posté le 23-05-2008 à 10:48:51  profilanswer
 

Le plus simple : enregistrer sous .csv puis importation dans mysql....
 
Aprés dans la même veine mais un peu plus automatique :  


---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm
n°1736101
clem1138
Posté le 23-05-2008 à 11:00:59  profilanswer
 

ok jai compris ....le probleme c'est le temps d'execution...je ne sais pas combien de lignes je vais avoir mais surement plusieurs centaines...et si a chaque fois que mon admin rajoute une ligne dans excel il doit mettre a jour comme cela ca va prendre tres lontps...a moin que l'on puisse rajouter que les lignes nouvelles ou les lignes modifiées????

n°1736106
infoman64
JE SUIS LA POUR TOI MON AMI
Posté le 23-05-2008 à 11:05:20  profilanswer
 

moi j'utilise cette méthode pour rajouter defois des milliers de lignes
çà prend trente seconde (un peu plus peut etre mais c'est super rapide)
 
aprés a toi de faire une boucle pour les insérer toutes, et de faire une vérification pour eviter de mettre des données en double

n°1736110
clem1138
Posté le 23-05-2008 à 11:08:16  profilanswer
 

ok je pensais que ca allait prendre beaucoup plus lontemps que ca.....ok ben c cool alors merci

n°1736140
anapajari
s/travail/glanding on hfr/gs;
Posté le 23-05-2008 à 11:56:46  profilanswer
 

infoman64 a écrit :

voici ma fonction pour lire mon fichier csv(il faut que tu transforme ton fichier excel en csv)
...


Ou alors plutôt que de réinventer la roue (sachant qu'en plus celle là est cassée vu que la requête SQL pète à cause des quotes), on utilise les fonctions fournies par le sgbd, http://dev.mysql.com/doc/refman/5.0/en/load-data.html :

Code :
  1. LOAD DATA INFILE 'data.txt' INTO TABLE tbl_name
  2.  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  3.  LINES TERMINATED BY '\n';



---------------
Software and cathedrals are much the same - first we build them, then we pray.
n°1736153
infoman64
JE SUIS LA POUR TOI MON AMI
Posté le 23-05-2008 à 12:07:02  profilanswer
 

oui tout a fait, je sais trés bien  
mais je réinvente rien, moi j'utilise cette fonction car je fait d'autre traitement derrière,je balance pas directement dans la bd
et la requête j'ai juste marqué pour qu'il comprenne le système, (tout simplement)

mood
Publicité
Posté le 23-05-2008 à 12:07:02  profilanswer
 

n°1736998
clem1138
Posté le 26-05-2008 à 09:17:51  profilanswer
 

je dois bien mettre ces lignes dans une requette sql a l'interieur de la page que je genere ???

n°1737282
clem1138
Posté le 26-05-2008 à 15:51:19  profilanswer
 

j'ai un ptit probleme encore....en executant ca directement dans php_my_admin l'importation se fait tres bien par contre avec une requette sql dans un script php et bien rien ne s'ajoute a la BDD...pourtant il n'y a aucune erreur de sql renvoyée

n°1737303
clem1138
Posté le 26-05-2008 à 16:50:33  profilanswer
 

personne a une idée serieu??

n°1737338
babasss
Posté le 26-05-2008 à 17:34:36  profilanswer
 

Pb de droits entre le login que tu utilises pour phpmyadmin (root par défaut) et le login que tu utilises pour te connecter à ta BDD, maybe ?


---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm
n°1737341
clem1138
Posté le 26-05-2008 à 17:36:46  profilanswer
 

je suis en local....pas ce pb


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  importation d'une BDD

 

Sujets relatifs
SQL Server : Ajouter une vue issue d'une autre BDDPhoto jpg et BDD : Veritable enigme !
[PHP / BDD] Ma gallerie photoInteraction avec BDD chez 1and1
BDD et les objets graphiqueUne grosse BDD ou plusieurs ?
Obtenir les schema a partir d'une BDDrajouter des séparateur pour importation
Importation données XML vers BDD MySqlErreur importation BDD
Plus de sujets relatifs à : importation d'une BDD


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR