diff --git a/Profil.php b/Profil.php
index d528b37c9f6dfa19938b86b184e5e1af97aeec96..715bb91ca34c39da728bba6146f32dcc73b9fd4b 100644
--- a/Profil.php
+++ b/Profil.php
@@ -15,6 +15,10 @@ session_start();
     <body>
 	<form action="" method="post">
 	<?php
+
+	$erreur = false;
+	$strerr = "<ul> Erreur : ";
+
 	if (isset($_POST['connexion'])){
                 header("location:connexion.php");
 	}
@@ -86,6 +90,10 @@ session_start();
            	}
            	if($_POST['email'] != ""){
            		$email = $_POST['email'];
+				if (!$email == "" && !filter_var($email, FILTER_VALIDATE_EMAIL )){
+					$erreur = true;
+					$strerr = '<li> Adresse e-mail invalide </li>';
+				}
            	}
            	if($_POST['sexe'] != ""){
            		$sexe = $_POST['sexe'];
@@ -95,25 +103,41 @@ session_start();
            	}
            	if($_POST['numtelephone'] != ""){
            		$numtelephone = $_POST['numtelephone'];
+				if (!$numtelephone == "" && !is_numeric($numtelephone) && strlen($codepostal) != 10){
+					$erreur = true;
+					$strerr = '<li> Numéro de téléphone invalide </li>';
+				}
            	}
            	if($_POST['ville'] != ""){
            		$ville = $_POST['ville'];
            	}
            	if($_POST['codepostal'] != ""){
            		$codepostal = $_POST['codepostal'];
+				if (!$codepostal == "" && !is_numeric($codepostal) && strlen($codepostal) != 5){
+					$erreur = true;
+					$strerr = '<li> Code postal invalide </li>';
+				}
+
            	}
            	if($_POST['password'] != ""){
            		if(preg_match('/^\S*(?=\S{8,})(?=\S*[a-z])(?=\S*[A-Z])(?=\S*[\d])\S*$/i', $_POST['password'])){
            			$password = $_POST['password'];
-           		}
+           		}else{
+					$erreur = true;
+					$strerr = '<li> Mot de passe invalide </li>';
+				   }
            		
            	}
            	if($_POST['datenaissance'] != ""){
            		$datenaissance = $_POST['datenaissance'];
            	}
-
-		$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");
+		if ($erreur == true){
+			echo "<div id='erreur'> <p>".$strerr."</ul> </p> </div>";
+			$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");
+		}
 		
         }
 
@@ -127,7 +151,9 @@ session_start();
         echo nl2br("Votre adresse : ".$adresse." - Modifier en <input name='adresse' type='text'/>"."\n");
         echo nl2br("Votre code postal : ".$codepostal." - Modifier en <input name='codepostal' type='text'/>"."\n");
         echo nl2br("Votre ville : ".$ville." - Modifier en <input name='ville' type='text'/>"."\n");
-        echo nl2br("Votre numéro de téléphone : ".$numtelephone." - Modifier en <input name='numtelephone' type='text'/>"."\n");
+        echo nl2br("Votre numéro de téléphone : ".$numtelephone." - Modifier en <input name='numtelephone' type='tel'/>"."\n");
+
+
         
 	?>
 	<input type="submit" name="modifier" class="button" value="Modifier"/>
diff --git a/Service.php b/Service.php
index 37379f7bf6ff83b44a5069f28ed59cd7fd0adcc9..1dd8f19392976d0444794264ffee7282ed54aaf7 100644
--- a/Service.php
+++ b/Service.php
@@ -35,10 +35,26 @@ function realiseInscription ($json){
     $codepostal = mysqli_real_escape_string ($mysqli, $json['codepostal']);
     $ville = mysqli_real_escape_string ($mysqli, $json['ville']);
     $numero = mysqli_real_escape_string ($mysqli, $json['numtelephone']);
+	if ($nom =='') $nom = 'NULL';
+	if ($prenom =='') $prenom = 'NULL';
+	if ($sexe =='') $sexe = 'NULL';
+	if ($email =='') $email = 'NULL';
+	if ($datenaissance =='') $datenaissance = 'NULL';
+	if ($adresse =='') $adresse = 'NULL';
+	if ($codepostal =='') $codepostal = 'NULL';
+	if ($ville =='') $ville = 'NULL';
+	if ($numero =='') $numero = 'NULL';
+
+	$q = "INSERT INTO utilisateurs(nom, prenom, sexe, email, pseudo, password, adresse, codepostal, ville, numtelephone, datenaissance) 
+	VALUES ({$nom}, {$prenom}, {$sexe}, {$email}, '{$pseudo}', '{$password}', {$adresse}, {$codepostal}, {$ville}, {$numero}, ";
+	if ($datenaissance != 'NULL') {
+		$q .= "'{$datenaissance}')";
+	}else{
+		$q .= "{$datenaissance})";
+	}
 
-	$res = $mysqli->query("INSERT INTO utilisateurs(nom, prenom, sexe, email, pseudo, password, datenaissance, adresse, codepostal, ville, numtelephone) 
-	VALUES ('{$nom}', '{$prenom}', '{$sexe}', '{$email}', '{$pseudo}', '{$password}','{$datenaissance}','{$adresse}','{$codepostal}','{$ville}','{$numero}')");
-    
+	$res = $mysqli->query($q);
+	
 	if ($res == true){ // si l'inscription fonctionne, préparation des éléments de sessions
         $_SESSION['pseudo'] = $json['pseudo'];
         $resultat = $mysqli->query("SELECT * FROM utilisateurs WHERE pseudo LIKE '{$pseudo}' AND password = '{$password}'");
diff --git a/connexion.php b/connexion.php
index 182d57dbc2fc8884909d13feb7a5a2d4ec9e229b..3bb08adb0f8b0029b05ddb2531277956d18df24e 100644
--- a/connexion.php
+++ b/connexion.php
@@ -12,6 +12,8 @@
         <title>Inscription</title>
         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
         <script type="text/javascript" src="formulaire.js"> </script>
+        <link href="recettes.css" rel="stylesheet">
+
 
     </head>
 
diff --git a/formulaire.js b/formulaire.js
index 41d5a0ea4d7549534c50eb1888dabe0ac49d44f8..1aa477ea0d72f9f487964730d01c64b30a49273a 100644
--- a/formulaire.js
+++ b/formulaire.js
@@ -19,9 +19,14 @@ window.addEventListener("load", function (){
     var explications = this.document.getElementById('explications');
     var divMdp = document.createElement("div");
     var divPseudo = document.createElement("div");
+    var divNumero = document.createElement("div");
+    var divPoste = document.createElement("div");
 
     explications.appendChild(divMdp);
     explications.appendChild(divPseudo);
+    explications.appendChild(divNumero);
+    explications.appendChild(divPoste);
+
     
 
     // Récupère le champ password et le test
@@ -37,7 +42,6 @@ window.addEventListener("load", function (){
     var ville = formulaire.ville;
     var numtelephone = formulaire.numtelephone;
 
-
     // Envoie le formulaire au serveur
     function envoyerForm(){
         let input;
@@ -48,6 +52,7 @@ window.addEventListener("load", function (){
             }
         });
 
+        console.log(datenaissance.value);
         if (genre){
             input = {
                 mode : 'inscription',
@@ -110,7 +115,28 @@ window.addEventListener("load", function (){
         xhr.send(JSON.stringify(input));
     
     }
-
+    function validPostal(event){
+        divPoste.innerHTML = "";
+        if (codepostal.value.length > 0){
+            if (!Number.isInteger(codepostal.value) && codepostal.value.length !=5){
+                codepostal.style.backgroundColor = 'red';
+                divPoste.innerHTML = "<li> Le code postal doit être composé de 5 chiffres </li>";
+                return false;
+            }
+        }
+        return true;
+    }
+    function validPhone(event){
+        divNumero.innerHTML = "";
+        if (numtelephone.value.length > 0){
+            if (!Number.isInteger(numtelephone.value) && numtelephone.value.length !=10){
+                numtelephone.style.backgroundColor = 'red';
+                divNumero.innerHTML = "<li> Le numéro de téléphone doit être composé de 10 chiffres </li>";
+                return false;
+            }
+        }
+        return true;
+    }
     // Test si l'e-mail est vide ou dans un format correct
     function validEmail(event){
         var reg = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
@@ -131,7 +157,7 @@ window.addEventListener("load", function (){
 
         if (pseudo.value.length < 3 || reg.test(pseudo.value)){
             pseudo.style.backgroundColor = 'red'; 
-            divPseudo.innerHTML = "<ul> Le pseudo doit faire au moins 3 caractères </ul>";
+            divPseudo.innerHTML = "<li> Le pseudo doit faire au moins 3 caractères </li>";
             return false;
         }else{
             pseudo.style.backgroundColor = 'white'; 
@@ -153,13 +179,13 @@ window.addEventListener("load", function (){
             return true;
         }else{ // Notification des erreurs
             password.style.backgroundColor = 'red';
-            divMdp.innerHTML = "<ul>Le mot de passe doit :";
+            divMdp.innerHTML = "<li>Le mot de passe doit :";
             if (password.value.length < 6) divMdp.innerHTML += "<li>faire plus de 6 caractères </li>";
             if (!majuscule.test(password.value) || (!minuscule.test(password.value))) {
-                divMdp.innerHTML += "<li>avoir au moins une majuscule et une minuscule </li> </ul>";
+                divMdp.innerHTML += "<li>avoir au moins une majuscule et une minuscule </li> </li>";
             }
             if (!nombre.test(password.value)) divMdp.innerHTML += "<li>contenir au moins un chiffre </li>";
-            divMdp.innerHTML += '</ul>';
+            divMdp.innerHTML += '</li>';
             return false;
         }
     }
@@ -173,7 +199,7 @@ window.addEventListener("load", function (){
 
     // active le bouton d'envoi du formulaire ou le bloque et donne des explications
     formulaire.addEventListener('keyup', () =>{
-        if (validPassword() && validPseudo() && validEmail()){
+        if (validPassword() && validPseudo() && validEmail() && validPhone() && validPostal()){
             explications.innerHTML = '';
             ok.disabled = false;
         }else{
@@ -196,6 +222,14 @@ window.addEventListener("load", function (){
         validEmail();
     })
 
+    numtelephone.addEventListener('keyup', () => {
+        validPhone();
+    })
+
+    codepostal.addEventListener('keyup', () => {
+        validPostal();
+    })
+
 });
 
 
@@ -275,7 +309,7 @@ window.addEventListener("load", function (){
 
         if (pseudo.value.length < 3 || reg.test(pseudo.value)){
             pseudo.style.backgroundColor = 'red';
-            divPseudo.innerHTML = "<ul> Le pseudo doit faire au moins 3 caractères </ul>";
+            divPseudo.innerHTML = "<li> Le pseudo doit faire au moins 3 caractères </li>";
             return false;
         }else{
             pseudo.style.backgroundColor = 'white'; 
@@ -296,13 +330,13 @@ window.addEventListener("load", function (){
             return true; 
         }else{
             password.style.backgroundColor = 'red'; 
-            divMdp.innerHTML = "<ul>Le mot de passe doit :";
+            divMdp.innerHTML = "<li>Le mot de passe doit :";
             if (password.value.length < 6) divMdp.innerHTML += "<li>faire plus de 6 caractères </li>";
             if (!majuscule.test(password.value) || (!minuscule.test(password.value))) {
-                divMdp.innerHTML += "<li>avoir au moins une majuscule et une minuscule </li> </ul>";
+                divMdp.innerHTML += "<li>avoir au moins une majuscule et une minuscule </li> </li>";
             }
             if (!nombre.test(password.value)) divMdp.innerHTML += "<li>contenir au moins un chiffre </li>";
-            divMdp.innerHTML += '</ul>';            
+            divMdp.innerHTML += '</li>';            
             return false;
         }
     }
diff --git a/inscription.php b/inscription.php
index 23e47b64ab2eb610fccababeb6337e0a9e59b057..92f1eaa23f3cec44d54aeb909f88bb7f474b95ae 100644
--- a/inscription.php
+++ b/inscription.php
@@ -12,6 +12,8 @@
         <title>Inscription</title>
         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
         <script type="text/javascript" src="formulaire.js"> </script>
+        <link href="recettes.css" rel="stylesheet">
+
 
     </head>
 
@@ -56,7 +58,7 @@
                             break;
                             case "datenaissance":
                                 $form.= "Date de naissance : ";
-                               $form .= "</label> <input type='date' required='false'  name='" . $row["Field"] . "' > </br>";
+                               $form .= "</label> <input type='date'  name='" . $row["Field"] . "' > </br>";
                            break;
                            case "adresse":
                                $form.= "Adresse : ";
@@ -68,10 +70,13 @@
                                $form.= "Ville : ";
                            break;
                            case "numtelephone":
-                               $form.= "Numéro de téléphone : ";
+                            $form.= "Numéro de téléphone : </label> ";
+
+                            $form .= "<input type='tel' name='".$row["Field"]."' >  </br>";
+
                            break;
                        }
-                       if ($row["Field"] != "sexe" && $row["Field"] != "pseudo" && $row["Field"] != "password" && $row["Field"] != "email" && $row["Field"] != "datenaissance"){
+                       if ($row["Field"] != "sexe" && $row["Field"] != "pseudo" && $row["Field"] != "password" && $row["Field"] != "email" && $row["Field"] != "datenaissance" && $row["Field"] != 'numtelephone'){
                            $form .= "</label> <input type='text' name='" . $row["Field"] . "' > </br>";
                        }
                     }