Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 27/03/2007, 17h03   #1
Nouveau Membre du Club
 
Inscription : février 2005
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 164
Points : 37
Points : 37
Par défaut [CSV] transformation excel vers mySQL

Bonjour,

J'ai une fiche excel que j'aimerais importer et transformer en une table mySQL directement via un formulaire (exemple comme pour l'ouverture d'un fichier avec un boîte de dialogue). Existe t-il des fonctions toutes faites qui permettent de faire cette transformation ou faut-il faire une transformation de la fiche excel au préalable sous un autre format (exemple dbf).

Merci pour vos éclairements !

SD
mcdelay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 08h56   #2
Membre habitué
 
Avatar de M1000
 
Développeur Web
Inscription : novembre 2003
Messages : 194
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 194
Points : 133
Points : 133
Tu peux enregistrer ton fichier en CSV et l'importer aisément dans MySQL ensuite via PhpMyAdmin après libre à toi de concevoir une appli PHP gérant tes données MySQL.
__________________
M1000
Le savoir se partage et le partage est un savoir...
M1000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 13h34   #3
Nouveau Membre du Club
 
Inscription : février 2005
Messages : 164
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 164
Points : 37
Points : 37
merci, mais ce que je veux c'est ne pas passer par PHPmyAdmin, mais avoir un bout de code me permettant de generer automatiquement une table mySQL d'un fichier excel (au format cvs).. L'application gérant les bases est déja finalisée,il ne me reste plus qu'a effectuer l'import d'un fichier excel (cvs) qu'un utilisateur se chargera personnellement d'importer.
mcdelay est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 13h46   #4
Membre habitué
 
Avatar de M1000
 
Développeur Web
Inscription : novembre 2003
Messages : 194
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 194
Points : 133
Points : 133
Je ne comprend pas la finalité de générer des tables MySQL en important un CSV , si j'ai bien compris... en gros tu veux recréer la fonction dimport de phpMyAdmin par exmple pour l'introduire dans ton application ?
__________________
M1000
Le savoir se partage et le partage est un savoir...
M1000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/03/2007, 14h41   #5
Membre du Club
 
Inscription : janvier 2005
Messages : 189
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France

Informations forums :
Inscription : janvier 2005
Messages : 189
Points : 64
Points : 64
Salut

j'ai une fonction qui t'enregistre dans une bdd les données d'un fichier txt (ou csv).
Elle s'applique à une bdd postgresql mais ça ne change pas grand chose

Code :
1
2
3
4
5
6
7
8
9
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
68
69
70
71
 
 
function ImportTxt($fichier,$separateur,$nb_champs)
{
$db_connect = connection_pg();
if (!$db_connect)
   {
   AfficheMessage ("Connexion impossible à la base postgres $dbname");
   exit;
   }
// ouverture du fichier en lecture
if (file_exists($fichier))
{ 
  $fp = fopen("$fichier", "r");
}
else
{ // fichier inconnu
 echo "Fichier introuvable !<br>Importation stoppée."; 
 exit(); 
}
$champ_dest="";
for($i=0;$i<=$nb_champs-1;$i++)
{
     if($i!=$nb_champs-1)
     {
      $champ_dest=$champ_dest."champ".$i.",";
     }
     else
     {
      $champ_dest=$champ_dest."champ".$i;
     }
}
// importation
echo "<br>Début importation...<br><br>";
while (!feof($fp))
{
   $ligne = fgets($fp,4096);
   $liste = explode($separateur,$ligne);
   $champ_source="";
   for($i=0;$i<=$nb_champs-1;$i++)
   {
     $champ=$liste[$i];
     echo($champ."&nbsp;&nbsp;");
     if($i!=$nb_champs-1)
     {
      $champ_source=$champ_source."'".$champ."',";
     }
     else
     {
      $champ_source=$champ_source."'".$champ."'";
     }
   }
 echo("<br>");
 $query = "INSERT INTO t_import ($champ_dest) VALUES($champ_source);";
 echo($query."<br><br>");
 $result= pg_query($query);
 if (pg_error())
 {
  echo "Erreur dans la base de données : ".pg_error();
  echo "<br>Importation stoppée.";
  fclose($fp);
  exit();
 }
 else
 {
 }
}
echo "<br>Importation terminée, avec succés.<br><br>";
fclose($fp);
pg_close($db_connect);
}
je sais pas si c'est ça que tu cherches, je te donne ça à titre indicatif.
après tu peux facilement créer une nouvelle table en modifiant quelques truc dans cette fonction
Mat_DZ est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 05h36.


 
 
 
 
Partenaires

Hébergement Web