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