Alimenter une table avec un csv

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Alimenter une table avec un csv

par eric269 » 13 sept. 2005, 11:44

chui nul, j'ai trouvé (merci à l'auteur)
<?php

// ------------------------------------------------------------------------- //
// Insérer le contenu d'un fichier CSV dans une table MySQL.                 //
// ------------------------------------------------------------------------- //
// Auteur: Perrich                                                           //
// Email:  [email protected]                                          //
// Web:    http://www.frshop.net/                                            //
// ------------------------------------------------------------------------- //


// $fileName  : le nom du fichier
// $tableName : le nom de la table
// $con       : id de connexion à MySQL (recupéré avec $con = mysql_connect(...)

function insertIntoTable( $fileName, $tableName, $con )
{
    $file = fopen( $fileName, 'r' );
    $k = 0;
  
    while ( ! feof( $file ) )
    {
        $k++;
        $line = fgets( $file, 1024 );

        if ( strlen( $line ) > 2 )
        {
            $line = addslashes( $line );
            $line = str_replace ( ";", "', '", $line );
            $requete = 'INSERT INTO '.$tableName.' VALUES ( \''.$line.'\' ) ';
            if ( ! mysql_query ( $requete, $con ) )
                echo 'Erreur Ligne '.$k.' : '.mysql_error().'<br>'.$requete.'<br>';
        } 
        else
            echo 'Ligne '.$k.' ignorée.<br>';
    }

    echo '<p>Insertion du fichier '.$fileName.' terminé.</p><hr>';

    fclose( $file );
}

?>
Sorry

Alimenter une table avec un csv

par eric269 » 13 sept. 2005, 11:37

Hello, je cherche un petit script pour charger un fichier CSV vers une table Mysql.
J'ai bien essayé XLSMagique (super), le prob, c'est que l'on ne peut pas donner d'attribut (char, varchar, etc.)

A+