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."  ");
     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);
} | 
Partager