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 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127
| <?php
if(!empty($_POST['send'])) {
$csv_file = $_FILES['csv_file']['name'];
if(!empty($csv_file)) {
//On simplifie le nom des variables $_FILES
$tmp_name=$_FILES['csv_file']['tmp_name'];
$name=$_FILES['csv_file']['name'];
$size=$_FILES['csv_file']['size'];
$type=$_FILES['csv_file']['type'];
$erreur=$_FILES['csv_file']['error'];
//On affiche les différentes variables
echo "Nom du fichier :".$name;
echo "<br>Taille du fichier :".$size;
echo "<br>Type de fichier :".$type;
//echo "<br>Nom temporaire :".$tmp_name;
echo "<br>Erreur :".$erreur;
echo "<br />";
//On crée une variable contenant le répertoire de destination
$uploadpath="/var/www/apache2-default/script/";
//On déplace le fichier du dossier temporaire vers le dossier de destination
move_uploaded_file($tmp_name,$uploadpath.$name);
$fichier= fopen($name, 'rb');
$references= array(); //on crée un tableau pour les références
mysql_connect("localhost","root","root"); //on se connecte à la BD
mysql_select_db("produits");
$query="select ref from objets" or die(mysql_error()); //on récupère toutes les références éxistantes dans la base pour les comparer
$reponse= mysql_query($query); //on stoque le résultat de la requete dans la variable $reponse
$r=0;
while ($donnees = mysql_fetch_array($reponse))
{
$references[$r]=$donnees['ref'];
//echo $references[$r]."<br />";
$r++;
}
$tab=array(); // tab va servir à stocker les valeur des champs de chaque ligne du fichier csv
echo "<table border='1'>\n";
$prem = fgetcsv($fichier,1024, ";"); //on lie la première ligne du fichier pour que le pointeur commence par la 2ème lors du traitement
for ($ligne = fgetcsv($fichier, 1024, ";"); !feof($fichier); $ligne = fgetcsv($fichier, 1024, ";")) { //on parcourt le fichier ligne par ligne
echo "<tr>";
$j = sizeof($ligne);
$bool = false;
for($m=0; $m < sizeof($references); $m++){
if($ligne[0] == $references[$m])
{
$bool =true;
}
}
if($bool== true){
$query="update prix set P1=$ligne[11]*$ligne[10], P2=$ligne[12]*$ligne[10], P4=$ligne[13]*$ligne[10], P5=$ligne[14]*$ligne[10], P10=$ligne[15]*$ligne[10], P15=$ligne[16]*$ligne[10], P20=$ligne[17]*$ligne[10], qte=$ligne[9] where ref= '$ligne[0]'" or die(mysql_error());
//echo $ligne[9];
mysql_query($query);
}
if(!$bool){
for ($i = 0; $i < $j; $i++) {
$tab[$i]=$ligne[$i];
if($i == 7){
$categories = explode("-",$tab[$i]);
$k= sizeof($categories);
//on parcours les valeurs multiples des catégories
for($l=0;$l<$k;$l++){
//s'il n'y a pas de catégories on sort de la boucle
if($categories[$l]==''){break;}
//on insère les couples catégorie référence dans la table de liaison
$query="insert into int_obj_cat(cid,ref) values($categories[$l],'$tab[0]')";
mysql_query($query)or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
//echo "categories : ".$categories[$l]." ";
}
}
else if($i == 8){
$couleurs=explode("-",$tab[$i]);
$k=sizeof($couleurs);
//on parcourt ttes les valeures multiples de couleurs
for($l=0;$l<$k;$l++){
// si le champs couleurs est vide on sort de la boucle
if($couleurs[$l] ==''){break;}
//on insère les couples couleur référence dans la table de liaison
$query="insert into int_obj_coul(cid,ref) values($couleurs[$l],'$tab[0]')";
mysql_query($query)or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
//echo "couleurs : ".$couleurs[$l]." ";
//mysql_close();
}
}
else if($i == 22){
$tailles=explode("-",$tab[$i]);
$k=sizeof($tailles);
//on parcourt ttes les valeures multiples de tailles
for($l=0;$l<$k;$l++){
// si le champs taille est vide on sort de la boucle
if($tailles[$l] ==''){break;}
//on insère les couples taille référence dans la table de liaison
$query="insert into int_obj_tail(tid,ref) values($tailles[$l],'$tab[0]')";
mysql_query($query)or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
//echo "tailles : ".$tailles[$l]." ";
}
}
echo "<td>$tab[$i]</td>";
}
$query1 = "insert into objets(ref,nom,descriptif,nom_all,descriptif_all,prix,fournisseur,type)values('".$tab[0]."','".$tab[2]."','".$tab[4]."','".$tab[3]."','".$tab[5]."',$tab[10],$tab[1],'".$tab[6]."')";
$query2= "insert into prix(id,ref,P1,P2,P4,P5,P10,P15,P20,qte) values('','$tab[0]',$tab[11]* $tab[10],$tab[12] * $tab[10],$tab[13] * $tab[10],$tab[14] * $tab[10],$tab[15] * $tab[10],$tab[16] * $tab[10],$tab[17] * $tab[10],$tab[9])";
mysql_query($query1)or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
mysql_query($query2)or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
echo "</tr>";
}
}
echo "</table>\n";
mysql_close();
}
}
?>
</body>
</html> |
Partager