Charger une table mysql à patir de fichiers
Fermé
chaffar
-
23 avril 2009 à 11:55
221285 Messages postés 2 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 23 avril 2009 - 23 avril 2009 à 15:21
221285 Messages postés 2 Date d'inscription jeudi 23 avril 2009 Statut Membre Dernière intervention 23 avril 2009 - 23 avril 2009 à 15:21
A voir également:
- Charger une table mysql à patir de fichiers
- Table ascii - Guide
- Table des matières word - Guide
- Wetransfer gratuit fichiers lourd - Guide
- Explorateur de fichiers - Guide
- Renommer plusieurs fichiers en même temps - Guide
1 réponse
221285
Messages postés
2
Date d'inscription
jeudi 23 avril 2009
Statut
Membre
Dernière intervention
23 avril 2009
23 avril 2009 à 15:21
23 avril 2009 à 15:21
Bonjour,
je suis en galère. je suis en pfe et il ne me reste plus beaucoup de temps
je veux charger une table mysql à partir des fichiers textes et excels qui se situent sur mon disque.
voici le code que j'ai récupé mais ça ne marche pas, j'ai un problème avec le SELF_PHP, je ne sais pas à quoi sert cette foncion.
merci pour l'aide
le code :
<html>
<head>
<title>Importer un fichier texte dans une bdd MySQL</title>
</head>
<body>
<h2>Importer un fichier texte dans une bdd MySQL</h2>
<?
switch($action)
{
/* LECTURE ET AJOUT DES DONNEES DANS LA TABLE */
case "ajouter":
/* Variables */
$bdd = "base"; /* Base de données */
$host= "localhost"; /* Hote (localhost en principe) */
$user= "user; /* Utilisateur */
$pass= "motpasse; /* Mot de passe */
/* Connexion bdd */
@mysql_connect($host,$user,$pass) or die("Impossible de se connecter à la base de données");
@mysql_select_db($bdd);
/* On cree la table */
if ($creertable)
{
$query = "CREATE TABLE $table( nom varchar(24),prenom varchar(24) )";
$result= MYSQL_QUERY($query);
}
/* On ouvre le fichier à importer en lecture seulement */
if (file_exists($fichier))
$fp = fopen("$fichier", "r");
else
{ /* le fichier n'existe pas */
echo "Fichier introuvable !<br>Importation stoppée.";
exit();
}
while (!feof($fp)) /* Et Hop on importe */
{ /* Tant qu'on n'atteint pas la fin du fichier */
$ligne = fgets($fp,4096); /* On lit une ligne */
/* On récupère les champs séparés par ; dans liste*/
$liste = explode( ";",$ligne);
/* On assigne les variables */
$nom = $liste[0];
$prenom = $liste[1];
/* Ajouter un nouvel enregistrement dans la table */
$query = "INSERT INTO $table VALUES('$nom','$prenom')";
$result= MYSQL_QUERY($query);
if(mysql_error())
{ /* Erreur dans la base de donnees, sûrement la table qu'il faut créer */
print "Erreur dans la base de données : ".mysql_error();
print "<br>Importation stoppée.";
exit();
}
else /* Tout va bien */
print "$nom $prenom <br>";
}
echo "<br>Importation terminée, avec succès.";
/* Fermeture */
fclose($fp);
MYSQL_CLOSE();
break;
/* FORMULAIRE DE CHOIX D'IMPORTATION */
default:
?>
<? echo "<form method=\"post\" action=\"$PHP_SELF\">"; ?>
Pour ajouter ton serveur il suffit de remplir ce formulaire
<table border="0" cellspacing="0" cellpadding="3">
<tr>
<td>Table :</td>
<td> <input type="text" name="table"> </td>
</tr>
<tr>
<td>Fichier :</td>
<td> <input type="text" name="fichier"> </td>
</tr>
<tr>
<td>Créer table ? :</td>
<td> <input type="checkbox" name="creertable" checked> </td>
</tr>
<tr>
<td></td>
<td> <input type="submit" name="submit" value="Et HoP !"> </td>
</tr>
</table>
<input type="hidden" name="action" value="ajouter">
</form>
<?
break;
}
?>
</body>
</html>
je suis en galère. je suis en pfe et il ne me reste plus beaucoup de temps
je veux charger une table mysql à partir des fichiers textes et excels qui se situent sur mon disque.
voici le code que j'ai récupé mais ça ne marche pas, j'ai un problème avec le SELF_PHP, je ne sais pas à quoi sert cette foncion.
merci pour l'aide
le code :
<html>
<head>
<title>Importer un fichier texte dans une bdd MySQL</title>
</head>
<body>
<h2>Importer un fichier texte dans une bdd MySQL</h2>
<?
switch($action)
{
/* LECTURE ET AJOUT DES DONNEES DANS LA TABLE */
case "ajouter":
/* Variables */
$bdd = "base"; /* Base de données */
$host= "localhost"; /* Hote (localhost en principe) */
$user= "user; /* Utilisateur */
$pass= "motpasse; /* Mot de passe */
/* Connexion bdd */
@mysql_connect($host,$user,$pass) or die("Impossible de se connecter à la base de données");
@mysql_select_db($bdd);
/* On cree la table */
if ($creertable)
{
$query = "CREATE TABLE $table( nom varchar(24),prenom varchar(24) )";
$result= MYSQL_QUERY($query);
}
/* On ouvre le fichier à importer en lecture seulement */
if (file_exists($fichier))
$fp = fopen("$fichier", "r");
else
{ /* le fichier n'existe pas */
echo "Fichier introuvable !<br>Importation stoppée.";
exit();
}
while (!feof($fp)) /* Et Hop on importe */
{ /* Tant qu'on n'atteint pas la fin du fichier */
$ligne = fgets($fp,4096); /* On lit une ligne */
/* On récupère les champs séparés par ; dans liste*/
$liste = explode( ";",$ligne);
/* On assigne les variables */
$nom = $liste[0];
$prenom = $liste[1];
/* Ajouter un nouvel enregistrement dans la table */
$query = "INSERT INTO $table VALUES('$nom','$prenom')";
$result= MYSQL_QUERY($query);
if(mysql_error())
{ /* Erreur dans la base de donnees, sûrement la table qu'il faut créer */
print "Erreur dans la base de données : ".mysql_error();
print "<br>Importation stoppée.";
exit();
}
else /* Tout va bien */
print "$nom $prenom <br>";
}
echo "<br>Importation terminée, avec succès.";
/* Fermeture */
fclose($fp);
MYSQL_CLOSE();
break;
/* FORMULAIRE DE CHOIX D'IMPORTATION */
default:
?>
<? echo "<form method=\"post\" action=\"$PHP_SELF\">"; ?>
Pour ajouter ton serveur il suffit de remplir ce formulaire
<table border="0" cellspacing="0" cellpadding="3">
<tr>
<td>Table :</td>
<td> <input type="text" name="table"> </td>
</tr>
<tr>
<td>Fichier :</td>
<td> <input type="text" name="fichier"> </td>
</tr>
<tr>
<td>Créer table ? :</td>
<td> <input type="checkbox" name="creertable" checked> </td>
</tr>
<tr>
<td></td>
<td> <input type="submit" name="submit" value="Et HoP !"> </td>
</tr>
</table>
<input type="hidden" name="action" value="ajouter">
</form>
<?
break;
}
?>
</body>
</html>