Excel vers Mysql

skins Messages postés 95 Statut Membre -  
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour tout le monde
J'ai un fichier Excel avec 20 colonnes et j'ai besoin de l'importer dans une table Mysql en passant par php.

Merci de m'aider svp

A voir également:

3 réponses

avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Tu peux l'exporter en CSV, et parser le fichier en PHP.
0
skins Messages postés 95 Statut Membre 13
 
Merci avion-f16 pour ton conseil, peux tu me montrer comment stp ?
0
avion-f16 Messages postés 20368 Date d'inscription   Statut Contributeur Dernière intervention   4 510
 
Chaque ligne est séparée par le caractère "\n" (qui représente un retour à la ligne). Tu peux donc utiliser la fonction explode pour obtenir un array où chaque entrée correspond à une ligne.
Dans cette ligne, tu peux encore utiliser la fonction explode() pour mettre les données séparées par une virgule dans un array.

En PHP, ça donne :
<?php
$fichier = 'fichier.csv';

try {
	$pdo = new PDO('mysql:host=localhost;dbname=ta_base','root','');

	$file = fopen($fichier, 'r');
	while(!feof($file)) {
		$ligne = fgets($file);
		if(!empty($ligne)) {
			$ligne = rtrim($ligne, "\n");
			$donnees = explode(',',$ligne);
			$sql = 'INSERT INTO table VALUES(';
		
			foreach($donnees as $v) {
				$sql .= $pdo->quote($v).',';
			}
			$sql = rtrim($sql, ',');
			$sql .= ')';
		
			$pdo->exec($sql);
		}
	}
} catch(PDOException $e) {
	echo 'Erreur : '.$e->getMessage();
}
?>
0