IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

[SQL] exporter non pas en CSV mais en .TXT (INSERT INTO.)


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut [SQL] exporter non pas en CSV mais en .TXT (INSERT INTO.)
    Bonjour le forum,

    Il existe bon nombre de script qui permettent un export de données SQL vers csv, mais existe t il un petit bout de code qui me permette tout simplement d'exporter les donnees dans un fichier .txt qui récpérerait les données de la table et les mettrait sous la forme :

    INSERT INTO TABLE VALUES (28000, 'test', '', '0000-00-00', '', '', '', '', '', '0000-00-00', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '');

    Merci milles fois et trés bonne fin de journée a tous

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    apparemment cela doit etre plus dur que je ne pensais...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Août 2006
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 379
    Points : 422
    Points
    422
    Par défaut
    Oui oui :'), c'est seulement une histoire de boucle, j'essaye de faire ça vite fait (ça ne sera pas évolué) et je te le post.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    function save_tbl($table) {
     
    	// Connection à la BDD + Selection de la base de donnée
    	[...]
    	// Nom du fichier texte
    	$name_txt = '['. date('d-m-y') .']'. $table .'.txt';
    	// Ouverture, ici création vu que le fichier n'existe pas, du fichier $name_txt
    	$open_txt = fopen($name_txt, 'w');
    	// La requête 
    	$query = mysql_query('SELECT * FROM '.$table);
    	// On boucle la requête pour créer le texte
    	while($a = mysql_fetch_row($query)){
    		// Le début de chaque(s) ligne(s)
    		$line = 'INSERT INTO '. $table .' VALUES (';
    		// On compte le nombre de colonne
    		$nb_cln = count($a);
    		// On ajoute les lignes ...
    		for($i = 0; $i < $nb_cln; $i++) {
    			$line = $line .'\''. addslashes($a[$i]) .'\'';
    			// On évite d'ajouter une virgule en trop ... (j'ai surement mal calculé mon coup ...) 
    			if ( $i!=($nb_cln-1) ){
    				 $line = $line .',';
    			}
    		}
    		// Fin de la ligne
    		$line = $line .");\n";
    		// On écrit la requête dans le fichier ...
    		fwrite($open_txt,$line);
    	}
    	// On ferme le fichier
    	fclose($open_txt);
     
    }
    Cela fonctionne sous phpmyadmin (pour les autres, aucune idées).

    [EDIT] : Voilà j'ai retouvé ça sur mon ancien DD, j'ai du m'en inspirer du net surement ... donc ta réponse y était aussi :').

  4. #4
    Expert éminent Avatar de Mr N.
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    5 418
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 5 418
    Points : 6 449
    Points
    6 449
    Par défaut
    Citation Envoyé par kaolivier
    Il existe bon nombre de script qui permettent un export de données SQL vers csv, mais existe t il un petit bout de code qui me permette tout simplement d'exporter les donnees dans un fichier .txt qui récpérerait les données de la table et les mettrait sous la forme
    phpmyadmin ?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    653
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 653
    Points : 183
    Points
    183
    Par défaut
    Merci pour ce bout de code certainement trés fort utile, je vais le tester demain.

    Concernant Mr N merci de m'avoir lu, mais ce que j'essai de faire c'est une manip via un code PHP donc en dehors de PHPMYADMIN, je sais je ne l'ai pas précisé....

    Car dans PHPMYADMIN, y a pas a se casser la tete puisque le prog est deja fait.

    Merci encore beaucoup SpiritOfDoc, je vais tester le prog demain, et je te dirai ce qu'il en est.

    Bonne soirée a tous

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/08/2014, 14h41
  2. Exporter les données en .csv mais cela ne fonctionne pas
    Par try123 dans le forum Développement
    Réponses: 10
    Dernier message: 19/06/2013, 16h55
  3. input type=file : recuperer non pas un fichier mais le dossier courant
    Par caromat dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 05/05/2010, 20h15
  4. Réponses: 15
    Dernier message: 28/05/2009, 17h21
  5. requette sql qui passe sous oracle 9i mais pas en 8i
    Par maxidoove dans le forum Oracle
    Réponses: 3
    Dernier message: 21/10/2005, 10h59

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo