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