diff --git a/Profil.php b/Profil.php
index 79c991c010ed264cf598045d9674ffc06e121220..1e991c2419869bcdeb1238adac5695d017009772 100644
--- a/Profil.php
+++ b/Profil.php
@@ -15,6 +15,9 @@ if (!isset($_SESSION['id'])){
 	header("location:index.php");
 }
 
+if (isset($_POST['success'])) header("Refresh:0");
+
+
 if (isset($_POST['connexion'])){
 	header("location:connexion.php");
 }
@@ -104,7 +107,11 @@ if (isset($_POST['deconnecter'])){
            		$pseudoExists = $mysqli->query("SELECT 1 FROM utilisateurs WHERE pseudo LIKE '{$_POST['pseudo']}'");
            		if($pseudoExists->num_rows == 0){
            			$newPseudo = $_POST['pseudo'];
-           		}
+					$_SESSION['pseudo'] = $newPseudo;
+           		}else{
+					   $erreur = true;
+					   $strerr .= '<li> Pseudonyme indisponible </li>';
+				   }
            	}
            	if($_POST['nom'] != ""){
            		$nom = $_POST['nom'];
@@ -116,10 +123,10 @@ if (isset($_POST['deconnecter'])){
            		$email = $_POST['email'];
 				if (!$email == "" && !filter_var($email, FILTER_VALIDATE_EMAIL )){
 					$erreur = true;
-					$strerr = '<li> Adresse e-mail invalide </li>';
+					$strerr .= '<li> Adresse e-mail invalide </li>';
 				}
            	}
-           	if($_POST['sexe'] != ""){
+           	if(isset($_POST['sexe'])){
            		$sexe = $_POST['sexe'];
            	}
            	if($_POST['adresse'] != ""){
@@ -129,7 +136,7 @@ if (isset($_POST['deconnecter'])){
            		$numtelephone = $_POST['numtelephone'];
 				if (!$numtelephone == "" && !is_numeric($numtelephone) && strlen($codepostal) != 10){
 					$erreur = true;
-					$strerr = '<li> Numéro de téléphone invalide </li>';
+					$strerr .= '<li> Numéro de téléphone invalide </li>';
 				}
            	}
            	if($_POST['ville'] != ""){
@@ -139,7 +146,7 @@ if (isset($_POST['deconnecter'])){
            		$codepostal = $_POST['codepostal'];
 				if (!$codepostal == "" && !is_numeric($codepostal) && strlen($codepostal) != 5){
 					$erreur = true;
-					$strerr = '<li> Code postal invalide </li>';
+					$strerr .= '<li> Code postal invalide </li>';
 				}
 
            	}
@@ -148,7 +155,7 @@ if (isset($_POST['deconnecter'])){
            			$password = $_POST['password'];
            		}else{
 					$erreur = true;
-					$strerr = '<li> Mot de passe invalide </li>';
+					$strerr .= '<li> Mot de passe invalide </li>';
 				   }
            		
            	}
@@ -160,13 +167,13 @@ if (isset($_POST['deconnecter'])){
 			$erreur = false;
 		}else{
 			$res = $mysqli->query("UPDATE utilisateurs SET nom = '{$nom}', prenom = '{$prenom}', email = '{$email}', sexe = '{$sexe}', adresse = '{$adresse}', numtelephone = '{$numtelephone}', datenaissance = '{$datenaissance}', ville = '{$ville}', pseudo = '{$newPseudo}', codepostal = '{$codepostal}', password = '{$password}' WHERE pseudo = '{$pseudo}';");
-			header("Refresh:0");
+			$_POST['success'] = true;
 		}
 		
         }
 
 		echo "<div class='formProfil'>
-		<label for='pseudo'>Pseudo actuel : ".$pseudo." - Modifier le : </label>
+		<label for='pseudo'>Pseudo actuel : ".$newPseudo." - Modifier le : </label>
 		<input type='text' name='pseudo' id='pseudo' />	
 		</div>";
 
@@ -221,6 +228,8 @@ if (isset($_POST['deconnecter'])){
 		<input name='numtelephone' type='tel'/>
 		</div>";
 
+
+
 	?>
 	<div class='formProfil'>
 		<input type="submit" name="modifier" class="button" value="Modifier"/>
diff --git a/SUCK_VAUTRIN_Rapport_WEB.pdf b/SUCK_VAUTRIN_Rapport_WEB.pdf
new file mode 100644
index 0000000000000000000000000000000000000000..ffb30902ca664495b80826e1c5fc1959e169c1d9
Binary files /dev/null and b/SUCK_VAUTRIN_Rapport_WEB.pdf differ
diff --git a/Service.php b/Service.php
index d45d2bdb875c91d430a55344822c6b1af9df8470..acb74f089c122bae745fc3811c6a63acf1e3681c 100644
--- a/Service.php
+++ b/Service.php
@@ -83,7 +83,6 @@ function realiseConnexion ($json){
         $_SESSION['id'] = $resultat['user_id'];
 		$_SESSION['mdp'] = $resultat['password'];
 
-
         $favs = $mysqli->query("SELECT p.recette_id FROM utilisateurs u, panier p WHERE u.user_id = p.user_id AND u.user_id = {$resultat['user_id']}");
         while($col = mysqli_fetch_assoc($favs)) {
             $resultats[] = $col['recette_id'];
@@ -188,10 +187,10 @@ function loadImage (string $nom){
  */
 function getPanier (){
 	if (isset($_SESSION['id'])){ // si connecté
-		$requete = "SELECT r.id, r.titre, r.preparation, r.ingredients FROM recettes r, panier p WHERE p.recette_id = r.id AND p.user_id = {$_SESSION['id']}";
+		$requete = "SELECT r.id, r.titre, r.preparation, r.ingredients, r.photo FROM recettes r, panier p WHERE p.recette_id = r.id AND p.user_id = {$_SESSION['id']}";
 		echo queryDBB($requete);
 	}else{
-		$requete = "SELECT id, titre, preparation, ingredients FROM recettes WHERE ";
+		$requete = "SELECT id, titre, preparation, ingredients, photo FROM recettes WHERE ";
 		for ($i = 0; $i < count($_SESSION['panier']); $i++) {
 			if ($i < count($_SESSION['panier']) -1){
 				$requete .= "id = ". $_SESSION['panier'][$i]." OR ";
diff --git a/copie.css b/copie.css
deleted file mode 100644
index dbb2df3219bfab6a4a6256c202289e99dae5a465..0000000000000000000000000000000000000000
--- a/copie.css
+++ /dev/null
@@ -1,141 +0,0 @@
-#recherche{
-    display: flex;
-    justify-content: space-evenly;
-    width: 50%;
-    min-width: none;
-    min-height: 30px;
-}
-
-#panier{
-    top: 0;
-    right :0;
-    position: fixed;
-}
-
-#header{
-    display: flex;
-    position: fixed;
-    top:0px;
-    width: 100%;
-    min-width: 600px;
-    height: 100px;
-    background-color: #c483a6;
-
-}
-
-#recettes{
-    padding-top: 5%;
-    width : 90%;
-    min-width: 400px;
-    margin: auto;
-
-}
-
-img {
-    max-width: 100%;
-    height: auto;
-    width: auto\9;
-}
-
-body{
-background-color: #c483a6;
-color: white;
-
-}
-
-h2{
-color: #fec4ae;
-font-weight: bold;
-text-align: center;
-}
-
-img{
-display:block;
-margin-left:auto;
-margin-right:auto;
-border: 2px solid #5e3657;
-}
-
-ul{
-text-align: center;
-}
-
-@keyframes recette {
-    from {background-color: #c483a6;}
-    to {background-color: #743d5a;}
-    from {color: #c483a6;}
-    to {color: #ffffff;}
-}
-
-
-.recetteSolo {
-    background-color: #743d5a;
-    animation-name: recette;
-    animation-duration: 0.4s;
-    border: 2px solid #422852;
-}
-
-/* Correspont au texte + liste de chaque recette */
-.preparation{
-    padding: 50px;
-}
-
-button {
-    background-color:white;
-    border-radius:12px;
-    border: 2px solid black;
-    transition-duration:0.4s;
-}
-
-input{
-background-color:white;
-font-size:16px;
-border-radius:12px;
-border: 2px solid black;
-transition-duration:0.4s;
-}
-
-#requete{
-width: 20%;
-min-width:200px;
-
-}
-
-input:hover, button:enabled:hover{
-background-color:black;
-color:white;
-}
-
-input + input{
-margin-right: 2%;
-margin-left: 2%;
-
-}
-
-.with {
-    padding-left: 2px;
-    padding-right: 2px;
-    margin-left: 2px;
-    margin-right : 2px;
-    background-color: darkgreen;
-    border-radius:12px;
-    border: 2px solid black;
-    transition-duration:0.4s;
-}
-
-.without {
-    padding-left: 2px;
-    padding-right: 2px;
-    margin-left: 2px;
-    margin-right : 2px;
-    background-color: darkred;
-    border-radius:12px;
-    border: 2px solid black;
-}
-
-#profil{
-    position: fixed;
-    margin-right:10em;
-    right:0;
-}
-
diff --git a/panier.js b/panier.js
index 693a1c40300e258aa1172d846413942ce64d6e1d..0d381cb90b8ce94f7f0e39174a08d380116ccbf2 100644
--- a/panier.js
+++ b/panier.js
@@ -61,7 +61,7 @@ function afficheRecettes(recette){
         let paragraph = document.createElement('p'); // paragraphe contenant la liste et description
         var liste = document.createElement('ul'); // liste
 
-        liste.innerHTML += "Ingrédients :";
+        liste.innerHTML += "<strong>Ingrédients :</strong>";
 
         // Récupération du contenu    
         titre.textContent = recette[i].titre;
@@ -72,34 +72,17 @@ function afficheRecettes(recette){
         for (var j = 0; j<ingredients.length; j++){
             liste.innerHTML += "<li>"+ingredients[j]+"</li>";
         }
-        /*
 
-        const search = recette[i].titre;
-        // Génère l'objet de requête à envoyer au serveur (traiter par Service.php) : le nom de la recette
-        const input = {
-            images : search
-        };
-        // Envoie de la requête
-        var xhr = new XMLHttpRequest();
-        xhr.open('POST', "/Service.php", true);
-        xhr.onload = () => {
-            if (xhr.response != null){
-                image.src = xhr.responseText;
-            } 
-        };
-
-        xhr.send(JSON.stringify(input)); 
-        */
+        let ul = document.createElement('ul'); // image
 
+        div.append(conteneur);
+        conteneur.append(titre);
         if (recette[i].photo != null){
             let image = document.createElement('img'); // image
             image.src = recette[i].photo;
+            ul.append(image);
        } 
-
-        // Ajout à la div de recettes
-        div.append(conteneur);
-        conteneur.append(titre);
-        conteneur.append(image);
+        if (ul.innerHTML !== "") conteneur.append(ul);
         conteneur.append(paragraph);
         paragraph.append(liste);
         ajoutFormulaire(conteneur, paragraph, recette[i]);
diff --git a/recettes.js b/recettes.js
index 20d1a0d9839bee44f0d2fa800b0d5b65fe7f46dc..930852f053d4dc56d10026ab940abbec0c799030 100644
--- a/recettes.js
+++ b/recettes.js
@@ -123,23 +123,6 @@ function afficheRecettes(recette){
                 liste.innerHTML += "<li>"+ingredients[j]+"</li>";
             }
 
-            /*
-            const search = recette[i].titre;
-            // Génère l'objet de requête à envoyer au serveur (traiter par Service.php) : le nom de la recette
-            const input = {
-                images : search
-            };
-            // Envoie de la requête
-            var xhr = new XMLHttpRequest();
-            xhr.open('POST', "/Service.php", true);
-            xhr.onload = () => {
-                if (xhr.response != null){
-                    image.src = xhr.responseText;
-                } 
-            };
-
-            xhr.send(JSON.stringify(input)); 
-            */
             // Ajout à la div de recettes
             let ul = document.createElement('ul'); // image
 
diff --git a/texte.php b/texte.php
deleted file mode 100644
index 202cf4d837960943267ab7358174cffb226b2488..0000000000000000000000000000000000000000
--- a/texte.php
+++ /dev/null
@@ -1,123 +0,0 @@
-<?php 
-include "Donnees.inc.php";
-include "configuration.php";
-
-echo "<pre>";
-
-if (isset($decoded['filtre'])){
-	searchFilters ($decoded['avec'], $decoded['sans']);
-}
-
-function searchFilters ($inclure, $exclure){
-	// recherche de la recette
-
-	// Création de la requête avec les recettes à inclure
-	$requete = "
-		select distinct r.id, r.titre, r.ingredients, r.preparation, r.photo 
-		from recettes r, ingredientsderecettes ing, hierarchie h where 
-		(h.sous_nom = ing.nomIngredient OR h.super_nom = ing.nomIngredient) 
-		AND ing.idBoisson = r.id 
-		AND (";
-
-	$nb = count($inclure);
-	$i = 0;
-	foreach ($inclure as $item){
-		if ($i < $nb-1){
-			$requete .= "ing.nomIngredient LIKE '{$item}%' OR ";
-		}else{
-			$requete .= "ing.nomIngredient LIKE '{$item}%')";
-		}
-		$i++;
-	}
-
-
-	// Création de la requête avec les recettes à exclure
-	$requeteOut = "
-		select distinct r.id, r.titre, r.ingredients, r.preparation, r.photo 
-		from recettes r, ingredientsderecettes ing, hierarchie h where 
-		(h.sous_nom = ing.nomIngredient OR h.super_nom = ing.nomIngredient) 
-		AND ing.idBoisson = r.id 
-		AND (";
-
-	$nb = count($exclure);
-	$i = 0;
-	foreach ($exclure as $item){
-		if ($i < $nb-1){
-			$requeteOut .= "ing.nomIngredient LIKE '{$item}%' OR ";
-		}else{
-			$requeteOut .= "ing.nomIngredient LIKE '{$item}%')";
-		}
-		$i++;
-	}
-
-
-	$mysqli= connect_to_db();
-	$res = $mysqli->query($requete);
-	if ($res != false){
-		$recettes = $res->fetch_all(MYSQLI_ASSOC);
-	}else{
-		$recettes = false;
-	}
-
-	$res = $mysqli->query($requeteOut);
-	if ($res != false){
-		$filtre = $res->fetch_all(MYSQLI_ASSOC);
-	}else{
-		$filtre = false;
-	}
-	
-	if ($filtre != false){
-		if ($recettes != false){
-			$sortie = array_diff($recettes, $filtre);
-		}else{
-			$sortie = false;
-		}
-	}else{
-		$sortie = $recettes;
-	}
-
-	$mysqli->close();
-	echo json_encode($sortie);
-	return json_encode($sortie);
-
-}
-
-// Parcours de la hiérarchie
-/*
-foreach ($Hierarchie as $item=>$val){
-    echo $item; // niveau actuel
-    echo '</br>';
-
-    foreach($val as $key=>$elem){ // niveau des sous-sup cat
-        echo $key;        
-        echo '</br>';
-        foreach($elem as $k=>$v){ // niveau d'exploration des sous-cat'
-            echo $v;        
-            echo '</br>';
-        }
-    }
-
-    echo '</br>';
-    echo '</br>';
-
-}*/
-
-
-/*
-foreach ($Recettes as $item){
-    echo $item['titre'];
-    echo '</br>';
-    foreach ($item['index'] as $elem){
-        echo $elem;
-        echo '</br>';
-
-
-    }
-    echo '</br>';
-    echo '</br>';
-}
-*/
-
-
-echo "</pre>"
-?>
\ No newline at end of file