<?php

include("include/data.php");
Init_boutique();
include 'menu/header_lt.php';
// entete de la page

if (!empty($_FILES)){
    $nomFichier = $_FILES['file']['name'];
    $TempRep = $_FILES['file']['tmp_name'];
    $tailleFichier = $_FILES['file']['size'];
    $typeFichier = $_FILES['file']['type'];
    $error = $_FILES['file']['error'];

    if ($error != 0 || !$TempRep){
        echo "Erreur : le fichier n\'a pas été uploadé" ;
        die();
    }

    if (move_uploaded_file($TempRep, 'uploaddir/'."$nomFichier")){

        echo 'Chargement du fichier '. $nomFichier.' terminé !';
    } else {
        echo "une erreur est survenue lors de l'envoie du fichier" ;
    }
}
$myFile = fopen("uploaddir/" . $_FILES['file']['name'], "r");
$i = 0;
while (!feof($myFile)) {
    $i++;
    $myLine = fgets($myFile);
    $tab = explode(";", $myLine);
    if ($i > 1 && strlen($tab[0]) > 0) {
        $NbLignesFichier = $i-1 ;
    }
}
fclose($myFile);

$i = 0;
echo "<div class='v-text'>";
echo "<br><div class='t-text'>Chemin du fichier : uploaddir/". $_FILES['file']['name']."<br>Resultat Import SQL : <br></div>";

  echo "<center><table class='t-text' width='750' border='1' cellspacing='2' cellpadding='2'>";
  echo "<tr>
	<th>N&deg;</th>
	<th>N&deg; base</th>
	<th>N&deg; Etiquette</th>
	<th>date</th>
	<th>Plu</th>
	<th>NumLot</th>
	<th>Poids  | Prix &euro;</th>
	<th></th>
	</tr>";

	//Le chemin d'acces a ton fichier sur le serveur
	$fichier = fopen("uploaddir/". $_FILES['file']['name'], "r");

	$last_num_etiq = 0 ;
	$sql1 = "SELECT max(num_etiq_ligne) FROM temp_import_csv";
	$req1 = mysqli_query($link, $sql1);
	$row = mysqli_fetch_row($req1);
	$last_num_etiq = $row[0];
	$last_num_etiq = $last_num_etiq + 1 ;

	$last_etiq = 0 ;
	$sql2 = "SELECT max(num_import_bl) FROM Base_detail_user";
	$req2 = mysqli_query($link, $sql2);
	$row = mysqli_fetch_row($req2);
	$last_etiq = $row[0];
	$last_etiq = $last_etiq ;
	$last_etiq_stop = $last_etiq+1;

echo "<br><div class='v-text'>Nombre de ligne de $nomFichier : " . $NbLignesFichier . "<br></div>";
$LignesTraite = 0;
$i = 1;
	//tant qu'on est pas a la fin du fichier :
	while (!feof($fichier)){

	// on recupere le num de la ligne et on incremente
	$last_num_entre = 0 ;
	$sql = "SELECT max(num_ligne_import) FROM temp_import_csv";
	$req = mysqli_query($link, $sql);
	$row = mysqli_fetch_row($req);
	$last_num_entre = $row[0];
	$last_num_entre = $last_num_entre + 1 ;

	// On recupere toute la ligne
	$uneLigne = addslashes(fgets($fichier));
	//On met dans un tableau les differentes valeurs trouvés (ici séparées par un ';')
	$tableauValeurs = explode(';', $uneLigne);

	// On crée la requete pour inserer les donner (ici il y a x champs donc de [x] a [x+y])

	if  ($tableauValeurs[3] >= $last_etiq) {
		$date_dlc=str_replace('/', '-', $tableauValeurs[13] );
		$date_etiq=str_replace('/', '-', $tableauValeurs[4] );
		$date_etiq=date("Y-m-d", strtotime($date_etiq));
		$date_dlc=date("Y-m-d", strtotime($date_dlc));

	$poids=str_replace(',', '.', $tableauValeurs[12] );
	$tarre=str_replace(',', '.', $tableauValeurs[11] );
	$PuHt=str_replace(',', '.', $tableauValeurs[10] );


  $NumLotImport=$tableauValeurs[17] ;
  $NumTrace=$tableauValeurs[9] ;
  $NumLot = trim($NumLotImport) ;
  $NumLot_NbCar_Lot=strlen($NumLotImport);
  $NumLot_Let=substr($NumLotImport, 0, 2);
		  // test si $NumLot_Let est tout en alpha
		   if (ctype_alpha($NumLot_Let)) {
		    //La chaîne contient que des lettres
		    $NumLot_SLet=substr($NumLot, 2);
		  } else {
		    // La chaîne ne contient pas que des lettres
		   $NumLot_Let=substr($NumLotImport, 0, 1);
		   $NumLot_SLet=substr($NumLot, 1);
		  }
 			// test le numero de lot si 8 car sans lettre
  		$NumLot_SLet_nbcar=strlen($NumLot_SLet);

  		if($NumLot_SLet_nbcar<8) {
  			$NumLot=$NumLot_Let."0".$NumLot_SLet;
  		}

  // recuperation du numero eleveur grace a la lettre
  $NumClient = 0 ;
	$sql4 = "SELECT Num_Client  FROM clients ";
	$sql4.= "WHERE Let_Client='".$NumLot_Let."'";
	$sql4.=" AND IdNumClient='".$IdNumClient."'";
	$req4 = mysqli_query($link, $sql4);
	$row = mysqli_fetch_row($req4);
	$NumClient = $row[0];

  // Conversion numero client
  $NumClient_final_W=$tableauValeurs[6];
  $NumClient_final_Deb=substr($NumClient_final_W, 0, 2);
  $NumClient_final_Fin=substr($NumClient_final_W, -3);
  $NumClient_final=$NumClient_final_Deb." ".$NumClient_final_Fin;

  $NumSemaine=date("W", strtotime($date_etiq));

/*
  	echo "<br>i :  $i | $tableauValeurs[3] | $last_num_entre <br>";
    echo "<br>Num Client :  $NumClient_final_W |$NumClient_final_Deb|$NumClient_final_Fin| $NumClient_final";
    echo "<br> $NumLotImport | nbr Car :$NumLot_Nbcar | Num lot : $NumLot | Nb car Trace :$NumLot_NbcarTrace | Trace : $NumTrace Pos : $NumLot_trace_pos | NbCarLot : $NumLot_NbCar_Lot";
		echo "<br> | Lettre Lot : $NumLot_Let | Num Lot sans Letre : $NumLot_SLet |$NumLot_SLet_nbcar| Num Lot :";
		echo "<br>Num Client : $NumClient | $tableauValeurs[11] =>$poids | $tableauValeurs[13] | $date_dlc ";
*/

	$sql3="INSERT IGNORE INTO temp_import_csv VALUES (
	'".$last_num_entre."',
	'".$IdNumClient."',
	'".$tableauValeurs[3]."',
	'".$date_etiq."',
	'".$NumSemaine."',
	'".$NumClient_final."',
	'".$tableauValeurs[7]."',
	'".$NumClient."',
	'".$NumLot_Let."',
	'".$NumLot."',
	'".$NumTrace."',
	'".$PuHt."',
	'".$tarre."',
	'".$poids."',
	'".$date_dlc."',
	'".$tableauValeurs[15]."',
	'".$tableauValeurs[16]."',
	'".$tableauValeurs[17]."',
	'0',
	'0',
	'0')";
	$vartest=intval($tableauValeurs[3]);

		if (($tableauValeurs[3]!="rowid") or ($tableauValeurs[3] <= $last_etiq))
		{
			if ($tableauValeurs[3] == $last_etiq)
			{ } else {
				$req3 = mysqli_query($link, $sql3);
				}
		}
				$a=($tableauValeurs[3] < $last_etiq);
/*
	echo "<br>$i | $tableauValeurs[3] =>$last_etiq | $vartest / $last_etiq_stop ";
	echo "<br> a : ".$a."<br>";
	echo "<br>$uneLigne<br>";
	echo "$sql3 | $req3<br>";
*/


 	 if (isset($req3)) {$req3_rs=1; }else{$req3_rs=0;}
 	switch ($req3_rs) {
	case 0:
	$i=$i-1;
	echo "<tr>
	<td>$i</td>
	<td>$last_num_entre</td>
	<td>$tableauValeurs[3]</td>
	<td>$date_etiq</td>
	<td>$tableauValeurs[7]</td>
	<td>$NumLot-$NumTrace</td>
	<td>Poids : $poids Kg | $PuHt &euro;</td>
	<td><img src='images/Erase.png'></td>
	</tr>";

	break;
	case 1:
	$i=$i+1;
	echo "<tr>
	<td>$i</td>
	<td>$last_num_entre</td>
	<td>$tableauValeurs[3]</td>
	<td>$date_etiq</td>
	<td>$tableauValeurs[7]</td>
	<td>$NumLot-$NumTrace</td>
	<td>Poids : $poids Kg | $PuHt &euro;</td>
	<td><img src='images/Apply.png'></td>
	</tr>";
	$last_etiq_import=$tableauValeurs[3];
	break;
		}

 	 } else {

	 		if ($req3){
	echo "<br><h2>Ajout dans la base de données effectué avec succès</h2><br>";
	} else {
	echo "<br> Importation impossible etiquette déjà importée !";
	}}
	// la ligne est finie donc on passe a la ligne suivante (boucle)
	}
	echo "<tr><th></th></tr>";
	echo "</table></center>";
	// Maj Num Etiq

	if (isset($last_etiq_import)) {
			$sql5 = "UPDATE Base_detail_user SET
			`num_import_bl` = '$last_etiq_import'
			WHERE `IdNumClient` = '$IdNumClient'";

			$res5 = mysqli_query($link, $sql5);
	//	echo "Rq : $sql5 | $res5<br>";

			echo "<br>Derniere etiquette importée : $last_etiq - num dernier base : $last_num_entre - Dernier numéro etiquette : $last_etiq_import - Nombre de lignes à importer : $i <br><br>" ;

	} else {
		echo "<br> Aucune mise &#224; jour necessaire";
		echo "<br>Derniere etiquette importée : $last_etiq => $last_etiq_import | Nombre de ligne(s) d&#233;j&#224; import&#233;e(s) : $i <br><br>" ;
		}

?>
