/* Altercarto.com*/
/*Joseph Paris :: joseph_paris@gmail.com*/
/*FONCTIONS :*/
$codelistenom="";
$z=0;
/*fin de fonction extract_data*/
/*DEBUT :*/
/*upload et traitement du fichier*/
/* $repertoireDestination = "NAT/";*/
$nom_fichier = "CODE_NOMS.txt";
$varnom="fichier";
if($nom_fichier!="")
{
$date_time=date("d-m-Y-H-m-s");
$nomDestination =$nom_fichier;
}
/*fin de if $nom_fichier!="" */
/*LECTURE DES DONNEES DU FICHIER :*/
$fichier="";
/*cette variable sert pour l'incrementation des lignes dans le fichier*/
$incr=0;
$separateur=chr('9');
$file_to_open=$nomDestination;
$len=strlen($nomDestination)-4;
$js_file=substr($nomDestination,0,$len).".js";
$file_to_write="NAT/".$js_file;
/*fichier ouvert en lecture seule*/
$fichier = fopen ($file_to_open, "r");
/*fichier ouvert en ꤲiture*/
$fichier2 = fopen ($file_to_write, "w");
/*fichier ouvert en lecture seule*/
$fichier3 = fopen ("national.num", "r");
/*fichier ouvert en ꤲiture*/
$fichier4 = fopen ("NAT/DATA-SVG2.js", "w");
/*------------------------------création DATA-SVG2.js*/
$DATSVG="";
$incr0=1;
while (!feof($fichier3)) {
/*lire une ligne*/
$buffer = fgets($fichier3, 4096);
if(substr($buffer,strlen($buffer)-1,1)!="\n")
{
$buffer=$buffer."\n";
}
$long=strlen($buffer)+1;
$Xcode[$incr0]=substr($buffer,0,4);
$b=$long-8;
$reste=substr($buffer,5,$b);
$long=strlen($reste)+1;
$XNMcoord[$incr0]="" ;
for($i=$long-3;$i>=0;$i--)
{
$X[$i]=substr($reste,$i,1);
}
for($i=$long-3;$i>=0;$i--)
{
if($X[$i]=="‚")
{
$X[$i]=".";
}
}
$indic0=0;
for($i=$long-3;$i>=0;$i--)
{
if($X[$i]=="\t")
{
$X[$i]=",";
}
$indic0=$indic0+1;
}
$indic0=$indic0-1;
for($i=0;$i<$indic0;$i++)
{
$XNMcoord[$incr0]=$XNMcoord[$incr0].$X[$i];
}
if(strlen($Xcode[$incr0])>2)
{
$DATSVG[$incr0]='ajouter("'.$Xcode[$incr0]."-".$XNMcoord[$incr0].'")'."\n";
fwrite($fichier4,$DATSVG[$incr0]);
$incr0=$incr0+1;
}
}
$der='ajouter("99999'."-".$XNMcoord[$incr0-1].'")'."\n";
fwrite($fichier4,$der);
/*--------------------------------------------------------fin de céation de DATASVG2.js*/
/* Tant qu'on est pas à la fin*/
$var_inser[$incr]="";
while (!feof($fichier)) {
// lire 4096 octets
/*lire une ligne*/
$buffer = fgets($fichier, 4096);
/*on stocke dans le tableau la chaine lue*/
$fichier_data[$incr]=$buffer;
$ligne=$buffer;
$data="";
/*cette fonction permet d'extraire les données dans un ligne, séparées par $separateur
la fonction renvoie le array $data[ ]*/
/*correction de fin de ligne pour fichier macintosh*/
if(substr($ligne,strlen($ligne)-1,1)!="\n")
{
$ligne=$ligne."\n";
}
$len_1=strlen($ligne)+1;
for($i=0;$i<$len_1;$i++)
{
$caractere=substr($ligne,$i,1);
if($caractere==$separateur)
{
$a=$len_1-$i-4;
$codelistenom[$z]=substr($ligne,0,4);
$data=substr($ligne,$i+1,$a);
$i=$len_1;
}
}
$z=$z+1;
$xnom=$data;
$var_inser[$incr]=$xnom;
$incr=$incr+1;
}
$incr=$incr-1;
fwrite($fichier2,'ZENOM= new Array("');
$indica=0;
$xcodetemp="";
$hh=0;
/* boucle sur le tableau $Xcode des codes de la carte num dans le fichier national num $Xcode[$incr0]*/
for($g=1;$g<$incr0;$g++)
{
$hh=$g-1;
/* boucle sur le tableau $codelistenom de la liste de nom sans caract鳥 problꮡtiques $codelistenom[$z]*/
for($h=$hh;$h<$incr;$h++)
{
if($Xcode[$g]==$xcodetemp)
{}
else
{
echo "---| \$codelistenom[\$h] ".$codelistenom[$h]." =".$h." ";
if($Xcode[$g]==$codelistenom[$h])
{
$indica=$indica+1;
$xcodetemp=$Xcode[$g];
if($indica<$incr){
$var_inser[$h]=$var_inser[$h].'","';
}
fwrite($fichier2,$var_inser[$h]);
$h=$incr;
}
}
}
}
fwrite($fichier2,'","rien")');
fclose ($fichier);
fclose ($fichier2);
fclose ($fichier3);
fclose ($fichier4);
echo "---| Le fichier "."DATA-SVG2.js"." a ete genere";
echo "
---| TELECHARGER";
echo "
---| Le fichier ".$js_file." a ete genere";
echo "
---| TELECHARGER";
?>