diff --git a/public/ajax/addRecord.php b/public/ajax/addRecord.php index 5b57c6e..c3fdbea 100644 --- a/public/ajax/addRecord.php +++ b/public/ajax/addRecord.php @@ -1,7 +1,7 @@ prepare($requete); $stmt->execute($params); // Suppression de la photo du produit si elle existe - if (file_exists('../uploads/products/'.$filename)) { - unlink('../uploads/products/'.$filename); + $nom_fichier = '../uploads/products/'.$nom_antenne.'/'.$filename; + if (file_exists($nom_fichier)) { + unlink($nom_fichier); } } diff --git a/public/ajax/readRecords.php b/public/ajax/readRecords.php index 32f17e1..f0f485f 100644 --- a/public/ajax/readRecords.php +++ b/public/ajax/readRecords.php @@ -39,7 +39,7 @@ $bdd = new \PDO("mysql:host=$host;dbname=$database_name", $username, $password); $number"; $data .= ''.$row['name'].''; - $data .= ''; + $data .= ''; $data .= ''.$row['username'].''; $data .= ''; $data .= ''.$row['quantite'].''; @@ -50,6 +50,9 @@ $bdd = new \PDO("mysql:host=$host;dbname=$database_name", $username, $password); $data .= "'"; $data .= ','; $data .= "'$antenne_slug'"; + $data .= ",'"; + $data .= $row['image']; + $data .= "'"; if ($row['username'] == $_GET['nom_connecte'] ) { $data .= ')" class=\'btn btn-primary\''; } else { @@ -81,7 +84,7 @@ $bdd = new \PDO("mysql:host=$host;dbname=$database_name", $username, $password); else { // Il n'y a pas encore de biens/services saisis - $data .= "Aucun enregistrement saisi"; + $data .= "Aucun enregistrement saisi"; } $data .= ''; diff --git a/public/ajax/upload.php b/public/ajax/upload.php index e2231bb..4292825 100644 --- a/public/ajax/upload.php +++ b/public/ajax/upload.php @@ -5,20 +5,29 @@ $filename = $_FILES['image']['name'] ?? $_FILES['add_image']['name']; // Emplacement $path = str_replace('\\', '/', dirname(realpath(__DIR__))); -$location = $path.'/uploads/products/'.$filename; -$location2 = '/uploads/products/'.$filename; +//$location = $path.'/uploads/products/'.$filename; +$location = $path.'/uploads/products/'; +//$location2 = '/uploads/products/'.$filename; // Extension du fichier -$file_extension = pathinfo($location, PATHINFO_EXTENSION); +$file_extension = pathinfo($filename, PATHINFO_EXTENSION); $file_extension = strtolower($file_extension); // Extensions valides d'image $image_ext = array("jpg","png","jpeg"); - +$nom_user = $_POST['nom_user']; +$nom_antenne = $_POST['nom_antenne']; $response = 0; if(in_array($file_extension,$image_ext)){ + $directory = $location.$nom_antenne; + if (file_exists($directory) === false) { + mkdir($directory, 0777, true); + } + $nom_fichier = $nom_antenne.'-'.$nom_user.'-'.uniqid("",true).'.'.$file_extension; + $location2 = '/uploads/products/'.$nom_antenne.'/'.$nom_fichier; // Upload du fichier - if(move_uploaded_file($_FILES['image']['tmp_name'] ?? $_FILES['add_image']['tmp_name'],$location)){ + if(move_uploaded_file($_FILES['image']['tmp_name'] + ?? $_FILES['add_image']['tmp_name'],$directory.'/'.$nom_fichier)){ $response = $location2; } } diff --git a/public/js/script.js b/public/js/script.js index fdd1316..066fa22 100644 --- a/public/js/script.js +++ b/public/js/script.js @@ -2,8 +2,8 @@ function addRecord(antenne_slug, antenne_id, nom_connecte, id_user) { var produit = $("#produit").val(); - var image = $("#add_image").val(); - var nom_image = image.substring(image.lastIndexOf("\\")+1); + var image = $("#hidden_image_name").val(); + var nom_image = image.substring(image.lastIndexOf("/")+1); var vendeur = $("#vendeur").val(); var cle_pub = $("#cle_pub").val(); var quantite = $("#quantite").val(); @@ -88,6 +88,7 @@ function DeleteProduits(id, antenne_slug, nom_image) { if (conf == true) { $.post("/ajax/deleteProduits.php", { id: id, + antenne_slug: antenne_slug, nom_image: nom_image }, function (data, status) { @@ -113,10 +114,11 @@ function DeleteRecherches(id) { ); } } -function GetProduitsDetails(id, antenne_slug) { +function GetProduitsDetails(id, antenne_slug, nom_image) { // Add Products ID to the hidden field for future usage $("#hidden_user_id").val(id); $("#hidden_antenne_slug").val(antenne_slug); + $("#hidden_image_name").val(nom_image); $.post("/ajax/readProduitsDetails.php", { id: id }, @@ -124,7 +126,7 @@ function GetProduitsDetails(id, antenne_slug) { var produit = JSON.parse(data); // Assign existing values to the modal popup fields $("#update_produit").val(produit.name); - $("#preview").html(''); + $("#preview").html(''); $("#update_vendeur").val(produit.username); $("#update_quantite").val(produit.quantite); $("#update_prix").val(produit.prix); @@ -155,8 +157,9 @@ function GetRecherchesDetails(id) { function UpdateProduitsDetails(nom_connecte) { var produit = $("#update_produit").val(); - var image = $("#image").val(); - var nom_image = image.substring(image.lastIndexOf("\\")+1); + var image = $("#hidden_image_name").val(); + var nom_image = image.substring(image.lastIndexOf("/")+1); + //alert('nom_image='+nom_image); var quantite = $("#update_quantite").val(); var prix = $("#update_prix").val(); // Champs cachés @@ -219,6 +222,8 @@ $(document).ready(function () { var fd_add = new FormData(); var files = $('#add_image')[0].files[0]; fd_add.append('add_image',files); + fd_add.append('nom_user',nom_connecte); + fd_add.append('nom_antenne',antenne_slug); // requête AJAX pour copier la photo et l'afficher $.ajax({ @@ -232,6 +237,8 @@ $(document).ready(function () { // Show image preview $('#add_preview').html(''); $('#add_preview').append(""); + // get hidden field value + $("#hidden_image_name").val(response); } else { alert('L\'image n\'a pu être uploadée'); } @@ -243,7 +250,8 @@ $(document).ready(function () { var fd = new FormData(); var files = $('#image')[0].files[0]; fd.append('image',files); - + fd.append('nom_user',nom_connecte); + fd.append('nom_antenne',antenne_slug); // requête AJAX pour copier la photo et l'afficher $.ajax({ url: '/ajax/upload.php', @@ -256,6 +264,8 @@ $(document).ready(function () { // Show image preview $('#preview').html(''); $('#preview').append(""); + // get hidden field value + $("#hidden_image_name").val(response); } else { alert('L\'image n\'a pu être uploadée'); } diff --git a/src/Product/views/admin/products/index.twig b/src/Product/views/admin/products/index.twig index 48ef442..98f0509 100644 --- a/src/Product/views/admin/products/index.twig +++ b/src/Product/views/admin/products/index.twig @@ -137,7 +137,6 @@
Choisir l'image :
-
@@ -158,6 +157,7 @@ +