diff --git a/Code/accueil.php b/Code/accueil.php
index 6dd1db043a57d54573c2673d812d6b1b051fb728..cc17db42c5c0c20acbac23937eae9b90f9b3d567 100644
--- a/Code/accueil.php
+++ b/Code/accueil.php
@@ -7,7 +7,7 @@
  */
 
 session_start();
-include_once("config_s.php");
+require_once ("config_s.php");
 include_once("mise_en_page.php");
 include_once("profil_vision.php");
 
@@ -24,7 +24,6 @@ if ($deco) {
     /* On veut se déconnecter */
     $co = False;
     $nomUser = -1;
-    $mdp = "";
     $admin = False;
 }
 
@@ -33,34 +32,33 @@ elseif ($connect) {
         $nomUser = $_GET['nomUser']; /* On vérifie que le login est non NULL */
     
     if ($nomUser != NULL && $nomUser != "") {
-        $mdp = $_GET['mdp'];
+        $mdp = $_GET['mdp']; /* On récupère le mdp */
 
         /* On teste si on existe dans la base et si on renvoie la valeur de admins */
-        $info = infoAdmin($nomBase, $nomUser, $mdp);
+        $info = connexion($nomUser, $mdp, $nomHost, $nomBase, $nomRoot, $mdpRoot);
+
         if ($info == 'y' || $info == 'n') {
             $co = True;
             if ($info == 'y') $admin = True;
             else $admin = False;
         }
+
         elseif ($info == -1) { /* La connexion à la table Eleve a échoué, donc le membre n'a pas les droits */
-            print "<p class=erreur>Erreur, contactez l'administrateur</p>";
+            print "<p class=erreur>Mot de passe incorrect ou login non répertorié</p>";
             $co = False;
             $nomUser = -1;
-            $mdp = "";
             $admin = False;
         }
         elseif ($info == -2) { /* La connexion à la table a échoué, donc la connexion n'a pas pu être établie */
-            print "<p class=erreur>Mot de passe incorrect ou login non répertorié</p>";
+            print "<p class=erreur>Erreur connexion table voulue, contactez l'administrateur</p>";
             $co = False;
             $nomUser = -1;
-            $mdp = "";
             $admin = False;
         }
-        else { /* La connexion à la base a échoué */
-            print "<p class=erreur>Erreur</p>";
+        else { /* La connexion à la base a échoué et $info = -3 */
+            print "<p class=erreur>Erreur connexion base de données, contactez l'administrateur</p>";
             $co = False;
             $nomUser = -1;
-            $mdp = "";
             $admin = False;
         }
     }
@@ -69,7 +67,6 @@ elseif ($connect) {
         print "<p class=erreur>Login vide</p>";
         $co = False;
         $nomUser = -1;
-        $mdp = "";
         $admin = False;
     }
 }
@@ -92,21 +89,21 @@ enTete("Accueil - Arbre de parrainage", $nomUser);
 
 print "<h4>Recherche :</h4>\n";
 
-print "<p> <a href=\"recherche_personne.html\">Rechercher une personne</a> </p>";
-print "<p> <a href=\"recherche_lien_de_parente.html\">Rechercher un lien de parenté</a> </p>";
+print "<p> <a href=\"form_recherche_personne.php\">Rechercher une personne</a> </p>";
+print "<p> <a href=\"form_recherche_lien_de_parente.php\">Rechercher un lien de parenté</a> </p>";
 
 print "<h4>Arbre :</h4>\n";
 
 print "<p> <a href='affichage_arbre.php' class='button1'>Voir l'arbre</a></p>";
 
-if ($nomUser != -1 && $nomUser != -2 && $nomUser != -3) {
+if ($co) {
 
     print "<h4>Modification de profil :</h4>\n";
 
     if ($admin) {
         print "<form action=\"profil_modif.php\" method='get'\n>";
         print "<p>Modification de son profil :  <input type=\"submit\" value=\"Modifier\" name=\"Mprofil\" /></p>\n";
-        print "<p>Modification du profil du nom : <input type=\"text\" size=\"8\" name=\"loginUser\"/>\n";
+        print "<p>Modification du profil du login : <input type=\"text\" size=\"8\" name=\"loginUser\"/>\n";
         print "<input type=\"submit\" value=\"Modifier ce membre\" name=\"Mmembre\" /></p>";
     }
     else {
diff --git a/Code/add_lien.php b/Code/add_lien.php
index f441e76544b83e10db051b811284db22c77c9bf8..b9c737ac9096df36112f1c878caa671a13ca9be6 100644
--- a/Code/add_lien.php
+++ b/Code/add_lien.php
@@ -6,15 +6,21 @@
  * Time: 23:43
  */
 
+session_start();
 include("mise_en_page.php");
 
-enTete("Ajout d'un lien de parenté",$_SESSION['nomUser']);
+/* Variables de session */
+$nomUser=$_SESSION['nomUser'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
+enTete("Ajout d'un lien de parenté",$nomUser);
 
 print "<p>Informations sur le membre de votre lignée :</p>";
 
 print "<script src='checkForm.js'></script>";
 
-print "<form action='add_lien2.php' name='lien1' method='get' onsubmit='return validateForm5()'>";
+print "<form action='ajout_lien.php' name='lien1' method='get' onsubmit=\"return validateForm5()\">";
 
 print "Relation : <select name=\"Relation\">";
 print "<option value=\"1\">Parrain/Marraine</option>";
@@ -23,11 +29,11 @@ print "</select><br/><br/>";
 
 print "<p>Nom: <input type=\"text\" size=\"8\" id=\"nom_id\" name=\"Nom\" pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>\n";
 print "Prénom: <input type=\"text\" size=\"8\" id=\"prenom_id\" name=\"Prenom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>\n";
-print "Surnom: <input type=\"text\" size=\"8\" name=\"Surnom\" pattern=\"[^'(){}[]/\]+\" title=\"Cannot contain {,(,[,),],},',/ or \ \"/> <br/>\n ";
-print "Promo: <input type=\"number\" size=\"5\" min=\"1960\" max=\"2020\" maxlength=\"4\" name=\"promo\"/> <br/></p>\n";
+print "Surnom: <input type=\"text\" size=\"8\" name=\"Surnom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" title=\"Cannot contain {,(,[,),],},',/ or \ \"/> <br/>\n ";
+print "Promo: <input type=\"number\" size=\"5\" min=\"1960\" max=\"2020\" maxlength=\"4\" name=\"Promo\"/> <br/></p>\n";
 
 print "<input type='submit' value='Valider' name='valider' />";
-print "<input type='reset' value='Annuler' name='annuler' />";
+print "<input type='reset' value='Reset' name='annuler' />";
 
 print "</form>";
 
diff --git a/Code/add_lien2.php b/Code/add_lien2.php
deleted file mode 100644
index f227543f953a6193a03e999d114c06ea7921f455..0000000000000000000000000000000000000000
--- a/Code/add_lien2.php
+++ /dev/null
@@ -1,120 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: genty
- * Date: 07/05/16
- * Time: 23:56
- */
-
-include('config_s.php');
-include('mise_en_page.php');
-
-enTete("Ajout d'un lien de parenté",$_SESSION['nomUser']);
-
-/* Variables de session */
-$nomUser = $_SESSION['nomUser'];
-$loginUser = $_SESSION['login'];
-$mdp = $_SESSION['mdp'];
-
-/* Variables issues du formulaire */
-$nom = $_GET['Nom'];
-$prenom = $_GET['Prenom'];
-$surnom = $_GET['Surnom'];
-$promo = $_GET['Promo'];
-$relation = $_GET['Relation'];
-
-if ( $DB = pg_connect("host=$nomHost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
-    if ($nom != null) {
-        $login = $nom . $prenom;
-        $check = pg_query($DB, "SELECT mail FROM eleve WHERE login_eleve=$login");
-        if ($check) {
-            $ligne_selectionnee = pg_fetch_array($check);
-            $mail = $ligne_selectionnee['mail'];
-            if ($relation == 'Parrain/Marraine') {
-                $value = true;
-                pg_query($DB, "INSERT INTO liens (parrain, filleul, valide) VALUES $login , $loginUser , $value ");
-            }
-            elseif ($relation == 'Filleul(e)') {
-                $value = true;
-                pg_query($DB, "INSERT INTO liens (parrain, filleul, valide) VALUES $loginUser,$login,$value");
-            }
-            $inscrit = true;
-        }
-        else {
-            /* Les variables du formulaire ne correspondent à aucun utilisateur de la base */
-            print "<form action='add_lien2.php' method='get' name='lien2' onsubmit='return validateForm6()'>";
-            print "<p>Votre parrain/marraine/filleul/filleule n'est pas inscrit(e) sur le site, donnez-nous son mail pour lui envoyer votre demande</p><br/><br/>";
-            print "Mail: <input type=\"email\" size=\"15\" name=\"Mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format'/> <br/><br/>\n";
-            print "<input type='submit' value='Valider'>";
-            print "</form>";
-            print "<p id=\"msg\"></p>";
-            $mail=$_GET['Mail'];
-            $inscrit = false;
-        }
-    }
-    elseif ($surnom != null) {
-        $check = pg_query($DB, "SELECT mail,login_eleve FROM eleve WHERE surnom=$surnom");
-        if ($check) {
-            $ligne_selectionnee = pg_fetch_array($check);
-            $mail = $ligne_selectionnee['mail'];
-            $login = $ligne_selectionnee['login_eleve'];
-            if ($relation == 'Parrain/Marraine') {
-                $value = true;
-                pg_query($DB, "INSERT INTO liens (parrain, filleul, valide) VALUES $login,$loginUser,$value ");
-            }
-            elseif ($relation == 'Filleul(e)') {
-                $value = true;
-                pg_query($DB, "INSERT INTO liens (parrain, filleul, valide) VALUES $loginUser,$login,$value ");
-            }
-            $inscrit = true;
-        }
-        else {
-            /* Les variables du formulaire ne correspondent à aucun utilisateur de la base */
-            print "<form action='add_lien2.php' method='get' name='lien2' onsubmit='return validateForm5()'>";
-            print "<p>Votre parrain/marraine/filleul/filleule n'est pas inscrit(e) sur le site, donnez-nous son mail pour lui envoyer une invitation</p><br/><br/>";
-            print "Mail: <input type=\"email\" size=\"15\" name=\"Mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format'/> <br/><br/>\n";
-            print "<input type='submit' value='Valider'>";
-            print "</form>";
-            print "<p id=\"msg\"></p>";
-            $mail=$_GET['Mail'];
-            $inscrit = false;
-        }
-    }
-    else {
-        /* Les variables ne suffisent pas pour identifier un utilisateur de la base */
-        return array(-2,0);
-    }
-}
-else {
-    /* Connexion à la base échouée */
-    return array(-3,0);
-}
-
-if ($inscrit) {
-    print "<p>Votre parrain/marraine/filleul(e) est déjà inscrit, veuillez lui envoyer un message pour le(a) prévenir de l'ajout du lien.</p>";
-}
-else {
-    print "<p>Votre parrain/marraine/filleul(e) n'est pas inscrit, veuillez lui envoyer un message pour lui demander de s'inscrire puis recommencez la procédure d'ajout de lien une fois son inscription terminée.</p>";
-}
-
-print "<form action='MAILTO:$mail' method='get' name='email' onsubmit=\"return validateForm4()\" enctype=\"text/plain\">";
-
-print "<fieldset>";
-print "<p>Nom :";
-print "<input type=\"text\" size=\"8\" name=\"name\" pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" title=\"Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)\"><br/><br/>";
-print "<p>Prénom :";
-print "<input type=\"text\" size=\"8\" name=\"Prenom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/></p><br/><br/>";
-print "<p>E-mail:";
-print "<input type=\"email\" size=\"15\" name=\"mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format'/></p><br/><br/>";
-print "<p>Objet:";
-print "<input type=\"text\" name=\"objet\" size=\"50\" value=\"Ajout de lien généalogique\"></p><br/><br/>";
-print "<p>Message (demande d'acceptation de lien):<br/>";
-print "<TEXTAREA name=\"Corps\" rows='4' cols='80' required placeholder=\"Ceci est un message provenant de l'application Arbre Généalogique de l'ENSIIE.\"></TEXTAREA><br/><br/>";
-print "<input type=\"submit\" value=\"Envoyer\">";
-print "<input type=\"reset\" value=\"Reinitialiser\"></p>";
-print "</fieldset>";
-print "</form>";
-
-retourAuMenu();
-
-pied();
\ No newline at end of file
diff --git a/Code/ajout_lien.php b/Code/ajout_lien.php
new file mode 100644
index 0000000000000000000000000000000000000000..9abbec419208ef34fda6ac8c5b06b79278f62578
--- /dev/null
+++ b/Code/ajout_lien.php
@@ -0,0 +1,132 @@
+<?php
+/**
+ * Created by PhpStorm.
+ * User: genty
+ * Date: 07/05/16
+ * Time: 23:56
+ * Updated by PhpStorm.
+ * User: sandra
+ * Date: 08/05/16
+ * Time: 11:45
+ */
+
+session_start();
+require_once ("config_s.php");
+include('mise_en_page.php');
+include_once ('profil_vision.php');
+
+
+/* Variables de session */
+$nomUser=$_SESSION['nomUser'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
+/* Variables issues du formulaire */
+$nom = $_GET['Nom'];
+$prenom = $_GET['Prenom'];
+$relation = $_GET['Relation']; /* Choix si parrain ou filleul ou si envoi direct (cas où on sait qu'il n'existe pas dans la BD)*/
+
+enTete("Ajout d'un lien de parenté",$nomUser);
+
+/* On teste si on a déjà regardé si l'utilisateur est dans la base de données */
+if ($relation != 0) {
+
+    $surnom = $_GET['Surnom'];
+    $promo = $_GET['Promo'];
+
+    /* A cause du formulaire, on a $nom et $prenom non nuls : on fera la requête donc ils doivent être non nuls */
+    if ($nom == NULL || $prenom == NULL) {
+        print "<p class='erreur'>Rafraîchir la page ou remplir le formulaire à nouveau : ";
+        print "<a href='add_lien.php'>Retour au formulaire</a></p>";
+    }
+
+    /* On demande à la BD si l'utilisateur existe dans la base */
+    $infos = infoMail($nom, $prenom, $surnom, $promo, $nomHost, $nomBase, $nomRoot, $mdpRoot);
+
+    if ($infos[0] == -3) {
+        print "<p>Plusieurs personnes ont été trouvées dans la base de données, saisissez plus d'informations. </p><br/>";
+        print "<a href='add_lien.php'>Retour au formulaire</a></p>";
+    }
+
+    if ($infos[0] == -2) { /* Erreur de connexion */
+        print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+    }
+
+    elseif ($infos[0] == -1) { /* Erreur de connexion à la table */
+        print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+    }
+
+    elseif ($infos[0] == -4) { /* Il n'y a pas de login trouvé */
+        print "<form action='ajout_lien.php' method='get' name='lien2' onsubmit='return validateForm6()'>";
+        print "<p>Votre parrain/marraine/filleul/filleule n'est pas inscrit(e) sur le site, donnez-nous son mail pour lui envoyer votre demande :</p><br/>";
+        print "Mail: <input type=\"email\" size=\"15\" name=\"Mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format'/> <br/><br/>\n";
+        print "<input type='hidden' name='Nom' value='$nom'/>";
+        print "<input type='hidden' name='Prenom' value='$prenom'/>";
+        print "<input type='hidden' name='Relation' value='0'/>";
+        print "<input type='submit' value='Valider'>";
+        print "</form>";
+        print "<p id=\"msg\"></p>";
+        $inscrit = NULL;
+    }
+
+    else {
+        $mail = $infos[1];
+        $inscrit = 'y';
+    }
+}
+
+else {
+    $mail = $_GET['Mail'];
+    $inscrit = 'n';
+}
+
+if ($inscrit != NULL) {
+    if ($inscrit == 'n') {
+        print "<p>Votre parrain/marraine/filleul(e) n'est pas inscrit(e), envoi d'une demande d'inscription :</p>";
+        print "<form action='MAILTO:$mail' method='get' name='email' onsubmit=\"return validateForm4()\" enctype=\"text/plain\">";
+
+        print "<fieldset>";
+        print "<p>Nom :";
+        print "<input type=\"text\" size=\"8\" name=\"name\" pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" value=$nom title=\"Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)\"><br/>";
+        print "<p>Prénom :";
+        print "<input type=\"text\" size=\"8\" name=\"Prenom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" value=$prenom title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/></p>";
+        print "<p>E-mail:";
+        print "<input type=\"email\" size=\"15\" name=\"mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format' value='$mail'/></p>";
+        print "<p>Objet:";
+        print "<input type=\"text\" name=\"objet\" size=\"50\" value=\"Invitation à joindre l'Arbre Généalogique de l'ENSIIE\"></p><br/>";
+        print "<p>Message (demande d'inscription):<br/>";
+        print "$prenom $nom, un utilisateur de l'application Arbre Généalogique de l'ENSIIE souhaite vous ajouter dans ses liens. Inscrivez-vous pour pouvoir ajouter ce lien.<br/><br/>";
+        print "<input type='hidden' name='Corps' value=\"$prenom $nom, un utilisateur de l'application Arbre Généalogique de l'ENSIIE souhaite vous ajouter dans ses liens. Inscrivez-vous pour pouvoir ajouter ce lien.\"/>";
+        print "<input type=\"submit\" value=\"Envoyer\">";
+        print "<input type=\"reset\" value=\"Reinitialiser\"></p>";
+        print "</fieldset>";
+        print "</form>";
+    }
+
+    elseif ($inscrit == 'y') {
+        print "<p>Votre parrain/marraine/filleul(e) est inscrit(e), envoi d'une demande d'ajout du lien :</p>";
+        print "<form action='MAILTO:$mail' method='get' name='email' onsubmit=\"return validateForm4()\" enctype=\"text/plain\">";
+
+        print "<fieldset>";
+        print "<p>Nom :";
+        print "<input type=\"text\" size=\"8\" name=\"name\" pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" value=$nom title=\"Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)\"><br/>";
+        print "<p>Prénom :";
+        print "<input type=\"text\" size=\"8\" name=\"Prenom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" value=$prenom title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/></p>";
+        print "<p>E-mail:";
+        print "<input type=\"email\" size=\"15\" name=\"mail\" pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format' value='$mail'/></p>";
+        print "<p>Objet:";
+        print "<input type=\"text\" name=\"objet\" size=\"50\" value=\"Demande de lien dans l'Arbre Généalogique de l'ENSIIE\"></p><br/>";
+        print "<p>Message (demande d'inscription):<br/>";
+        print "<TEXTAREA name=\"Corps\" rows='4' cols='80' required placeholder=\"Proposez ici votre demande de lien en n'oubliant pas de vous identifier (nom, prénom et/ou surnom) !\"></TEXTAREA><br/><br/>";
+        print "<input type=\"submit\" value=\"Envoyer\">";
+        print "<input type=\"reset\" value=\"Reinitialiser\"></p>";
+        print "</fieldset>";
+        print "</form>";
+
+    }
+}
+
+retourAuMenu();
+pied();
+
+?>
\ No newline at end of file
diff --git a/Code/connect.php b/Code/connect.php
deleted file mode 100644
index f3bd49fb6236ea8db01d4f33ec4026ea3de66f97..0000000000000000000000000000000000000000
--- a/Code/connect.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: genty
- * Date: 06/05/16
- * Time: 01:23
- */
-
-session_start();
-include_once("config_s.php");
-include_once("mise_en_page.php");
-include_once("profil_vision.php");
-
-$connecter = $_GET['connecter']; /* On vient d'essayer de se connecter */
-
-$co = $_SESSION['co'];
-
-enTete("Accueil - Arbre de parrainage",$_SESSION['nomUser']); /* Rq : Si je mets ça, ça passe, non ? */
-
-if ($connecter) {
-
-    /* On veut se connecter */
-    $nomUser = $_GET['nomUser']; /* On vérifie que le login est non NULL */
-
-    if ($nomUser != NULL && $nomUser != "") {
-        $mdp = $_GET['mdp'];
-
-        /* On teste si on existe dans la base et si on renvoie la valeur de admins */
-        $info = infoAdmin($nomBase, $nomUser, $mdp);
-
-        if ($info == 'y' || $info == 'n') {
-            $co = True;
-            if ($info == 'y') $admin = True;
-            else $admin = False;
-            print "Bienvenue $nomUser !";
-            if ($admin) print " (Vous êtes administrateur).";
-        }
-
-        elseif ($info == -1) { /* La connexion à la table a échoué */
-            print "<p class=erreur>Mot de passe incorrect ou login non répertorié</p>";
-            $co = False;
-            $nomUser = -1;
-            $mdp = "";
-            $admin = False;
-        }
-
-        else { /* La connexion à la base a échoué */
-            print "<p class=erreur>Pas de connexion</p>";
-            $co = False;
-            $nomUser = -1;
-            $mdp = "";
-            $admin = False;
-        }
-    }
-
-    else { /* Le login est NULL */
-        print "Login NULL";
-        $co = False;
-        $nomUser = -1;
-        $mdp = "";
-        $admin = False;
-    }
-}
-
-elseif ($co) { /* On était connecté, donc on garde les mêmes informations */
-    print "On était connecté";
-    $nomUser=$_SESSION['nomUser'];
-    $nomBase=$_SESSION['nomBase'];
-    $mdp=$_SESSION['mdp'];
-    $admin = $_SESSION['admin'];
-}
-
-/* On initialise les variables de session */
-$_SESSION['co'] = $co;
-$_SESSION['nomUser'] = $nomUser;
-$_SESSION['nomBase'] = $nomBase;
-$_SESSION['mdp'] = $mdp;
-$_SESSION['admin'] = $admin;
-
-print "<form action=\"accueil.php\" method='get'>";
-print"<input type=\"submit\"  value=\"retour\" name=\"connecter\" /></p>\n";
-print "</form>";
-
-?>
\ No newline at end of file
diff --git a/Code/creation_donnees_perso.php b/Code/creation_donnees_perso.php
index e6b7f3f56712922db147f2b19e0d149cfc5853f3..59c19875c74a79e09c89ef06775e3eb1e138d4fe 100644
--- a/Code/creation_donnees_perso.php
+++ b/Code/creation_donnees_perso.php
@@ -7,66 +7,59 @@
  */
 
 session_start();
-include("config.php");
+require_once ("config_s.php");
 include("profil_vision.php");
 include("mise_en_page.php");
 
-print "OK"; /* Rq : A enlever, non ? */
 
 $nomUser=$_GET['Nom'];
 $prenomUser=$_GET['Prenom'];
 $mdp=$_GET['psw'];
 $mail=$_GET['Mail'];
-$login=$nomUser.$prenomUser;
+$login=strtolower($nomUser).'.'.strtolower($prenomUser); /* Le login est donné comme étant nom.prenom */
 
-print "<p> Your login is : $login</p>\n";
 
-if ( $DB = pg_connect("host=$nomHost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
-    $check = pg_query($DB, "SELECT nom_eleve, prenom FROM eleve");
-    while ($check) {
-        $ligne_selectionnee = pg_fetch_array($check);
+enTete("Création du profil", -1);
 
-        $nom = $ligne_selectionnee['nom_eleve'];
-        $prenom = $ligne_selectionnee['prenom'];
+$possible = possible_creer_login ($nomUser, $nomHost, $nomBase, $nomRoot, $mdpRoot);
+if ($possible == -3) {
+    print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($possible == -2) {
+    print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+}
 
-        /* On teste si le login n'existe pas déjà dans la base */
-        if ($nom != $nomUser && $prenom != $prenomUser) {
-            $existe = false;
-            $ligne_selectionnee = pg_fetch_array($check);
-        }
-        else {
-            $existe = true;
-            break;
-        }
+elseif ($possible == -1) { /* Si le login n'est pas bon */
+    print "<p class = 'erreur'>Il y a un problème pour le choix du login. Contactez l'administrateur.</p>";
+}
+
+else { /* On peut créer le profil */
+    $creation = creer_profil($login, $nomUser, $prenomUser, $mail, $mdp, $nomHost, $nomBase, $nomRoot, $mdpRoot);
+
+    if ($creation == -3) {
+        print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
     }
-    if ($existe != true) {
-            $no = 'n';
-            pg_query($DB,"INSERT INTO eleve (login_eleve,nom_eleve,prenom,mail,mdp,admins) VALUES $login , $nomUser , $prenomUser , $mail , $mdp , $no");
-            pg_query($DB,"CREATE USER $login WITH PASSWORD $mdp");
-            pg_query($DB,"GRANT ROLE visiteur TO $login");
+
+    elseif ($creation == -2) {
+        print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
     }
+
     else {
-        /* Le login existe déjà */
-        print "<p>Cet utilisateur se trouve déjà dans la base, veuillez modifier les données rentrées ou contacter l'administrateur en cas de problème.</p>";
-        return array(-1, 0, 0, 0, 0, 0, 0, 0, 0, 0);
-    }
-}
-else {
-    /* Connexion à la BD impossible */
-    return array(-2,0,0,0,0,0,0,0,0,0);
-}
+        print "<p>Le compte a été créé avec succès. Vous avez été automatiquement connecté. Votre login est : $login</p>";
 
-/* On initialise les variables de session */
-$_SESSION['co'] = True;
-$_SESSION['login'] = $login;
-$_SESSION['nomBase'] = $nomBase;
-$_SESSION['mdp'] = $mdp;
-$_SESSION['mail'] = $mail;
-$_SESSION['admin'] = False;
-$_SESSION['nomUser'] = $nomUser;
-$_SESSION['prenomUser'] = $prenomUser;
+        /* On initialise les variables de session */
+        $_SESSION['co'] = True;
+        $_SESSION['nomUser'] = $login;
+        $_SESSION['admin'] = False;
 
-enTete("Création du profil",$nomUser);
-print "<p>Remplir les autres données de votre profil : <a href='creer_profil2.php'>Finir la création du profil</a></p>";
+        print "<p>Il vous faut maintenant compléter votre profil pour que les autres membres puissent vous reconnaître facilement: ";
+
+        print "<form action=\"profil_modif.php\" method='get'\n>";
+        print "<input type=\"hidden\" name=\"loginUser\" value='$login'/> <br/> \n";
+        print "<input type=\"submit\" value=\"Finaliser l'inscription\" name=\"Mprofil\" /></p>";
+        print "</form>";
+    }
+}
 retourAuMenu();
 pied();
\ No newline at end of file
diff --git a/Code/creation_donnees_perso2.php b/Code/creation_donnees_perso2.php
deleted file mode 100644
index d539231b4e02493b1854c344aa20213827947cd2..0000000000000000000000000000000000000000
--- a/Code/creation_donnees_perso2.php
+++ /dev/null
@@ -1,85 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: genty
- * Date: 06/05/16
- * Time: 03:23
- */
-
-session_start();
-include("config.php");
-include("profil_vision.php");
-include('mise_en_page.php');
-
-$nomUser=$_GET['Nom'];
-$prenomUser=$_GET['Prenom'];
-$login=$nomUser.$prenomUser;
-$mdp=$_GET['psw'];
-$surnom=$_GET['Surnom'];
-$promo=$_GET['Promo'];
-$ddn=$_GET['Ddn'];
-$tel=$_POST['Tel'];
-$mail=$_GET['Mail'];
-$ecole=$_POST['ecole'];
-$gpe=$_POST['gpe'];
-$assoces=array($_GET['assoc']);
-
-print "<p> Your login is : $login</p>";
-
-if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
-    $check = pg_query($DB, "SELECT nom_eleve, prenom, mail, mdp FROM eleve WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-    if ($check) {
-        $ligne_selectionnee = pg_fetch_array($check);
-
-        $newmail=$ligne_selectionnee['mail'];
-        $newmdp=$ligne_selectionnee['mdp'];
-        /* On teste si le mail ou le mdp ont été modifiés est encore n'existe pas déjà dans la base */
-        if ($newmail != $mail) {
-            pg_query($DB,"UPDATE eleve SET mail=$newmail WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-            $_SESSION['mail'] = $mail;
-        }
-        if ($newmdp == $mdp) {
-            pg_query($DB,"UPDATE eleve SET mdp=$newmdp WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-            $_SESSION['mdp'] = $mdp;
-        }
-
-        if ($surnom != null && $surnom != "") { 
-            pg_query($DB,"UPDATE eleve SET surnom=$surnom WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($promo != null && $promo != "") {
-            pg_query($DB,"UPDATE eleve SET promo=$promo WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($ddn != null && $ddn != "") {
-            pg_query($DB,"UPDATE eleve SET ddn=$ddn WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($tel != null && $tel != "") {
-            pg_query($DB,"UPDATE eleve SET tel=$tel WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($ecole != null && $ecole != "") {
-            pg_query($DB,"UPDATE eleve SET lieu=$ecole WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($gpe != null && $gpe != "") {
-            pg_query($DB,"UPDATE eleve SET gpe_td=$gpe WHERE nom_eleve=$nomUser AND prenom=$prenomUser");
-        }
-        if ($assoc != null && $assoc != "") {
-            $i=0;
-            while ($assoces[$i] != null) {
-                $idassoc=pg_query($DB,"SELECT id_assoc FROM assoc WHERE nom=$assoces[$i]");
-                pg_query($DB, "INSERT INTO assoc_eleve (login_eleve, id_assoc) VALUES $login,$idassoc");
-                $i=$i+1;
-            }
-        }
-    }
-    else {
-        /* La commande a échoué */
-        return array(-2,0,0,0,0,0,0,0,0,0);
-    }
-}
-else {
-    /* Connexion à la BD impossible */
-    return array(-3,0,0,0,0,0,0,0,0,0);
-}
-
-enTete("Création du profil complet",$nomUser);
-retourAuMenu();
-pied();
\ No newline at end of file
diff --git a/Code/creer_profil1.php b/Code/creer_profil1.php
index c771dd4d3e921ef36c3d59774616798fdcd9539f..ed9c38de427472f4f46e46ae63b70bd6b31bbc9d 100644
--- a/Code/creer_profil1.php
+++ b/Code/creer_profil1.php
@@ -6,9 +6,11 @@
  * Time: 03:59
  */
 
+session_start();
+
 include("mise_en_page.php");
 
-enTete("Création de profil",$_SESSION['nomUser']);
+enTete("Création de profil",$_SESSION['nomUser']); // A revoir
 
 print "<form name=\"creation\" action=\"creation_donnees_perso.php\" method='get' onsubmit='return validateForm2()'>\n";
 
@@ -18,7 +20,7 @@ print "<script src=\"checkForm.js\"></script>\n";
 
 print "<input type='hidden' name='submitted' value='1'/>\n";
 
-print "<p>Une fois rentrés, les nom et prénom ne pourront plus être modifiés (s'adresser à l'admin en cas de problème)</p><br/><br/>";
+print "<p>Le login est attribué automatiquement.<br/>Une fois rentrés, les nom et prénom ne pourront plus être modifiés (s'adresser à l'admin en cas de problème)</p><br/>";
 
 print "<p>Nom: <input type=\"text\" size=\"8\" id=\"nom_id\" name=\"Nom\" pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>\n";
 print "Prénom: <input type=\"text\" size=\"8\" id=\"prenom_id\" name=\"Prenom\" pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>\n";
@@ -32,5 +34,5 @@ print "<p><input type=\"submit\" value=\"Valider\" name=\"validation\" /></p>\n"
 print "</form>\n";
 
 retourAuMenu();
-
-pied();
\ No newline at end of file
+pied();
+?>
\ No newline at end of file
diff --git a/Code/creer_profil2.php b/Code/creer_profil2.php
deleted file mode 100644
index 75a671d4efac5d33326910cd708ea36da8becd20..0000000000000000000000000000000000000000
--- a/Code/creer_profil2.php
+++ /dev/null
@@ -1,103 +0,0 @@
-<?php
-/**
- * Created by PhpStorm.
- * User: genty
- * Date: 06/05/16
- * Time: 02:22
- */
-
-include("mise_en_page.php");
-include("creation_donnees_perso.php");
-
-enTete("Création de profil",$_SESSION['nomUser']);
-
-print "<form name=\"creation\" action='profil_modif.php' method='get' onsubmit='return validateForm3()'>\n";
-
-print "<h4>Données personnelles: </h4>\n";
-
-print "<script src=\"checkForm.js\"></script>\n";
-
-print "<input type='hidden' name='submitted' value='1'/>\n";
-
-$nomUser = $_SESSION['nomUser'];
-$prenomUser = $_SESSION['prenomUser'];
-$login = $_SESSION['login'];
-$mdp = $_SESSION['mdp'];
-$mail = $_SESSION['mail'];
-
-print "<p>Nom: <input type=\"text\" size=\"8\" name=\"Nom\" value=$nomUser pattern=\"[A-Z][a-zA-Z'-.\s]{1,}\" title=\"Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)\"/>\n<br/>\n";
-print "Prénom: <input type=\"text\" size=\"8\" name=\"Prenom\" value=$prenomUser pattern=\"[A-Z][a-zA-Z-.\s]{1,}\" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>\n";
-print "Surnom: <input type=\"text\" size=\"8\" name=\"Surnom\" pattern=\"[^'(){}[]/\]+\" title=\"Cannot contain {,(,[,),],},',/ or \ \"/> <br/>\n "; /* Rq : pb ici */
-print "Promo: <input type=\"number\" size=\"5\" min=\"1960\" max=\"2020\" maxlength=\"4\" name=\"promo\"/> <br/>\n";
-print "Date de naissance (AAAA-MM-JJ): <input type=\"date\" name=\"Ddn\" min='1940-01-01' max='2010-12-31'/><br/>\n";
-print "Téléphone: <input type=\"text\" size=\"12\" name=\"Tel\" pattern='[0-9]{10}' title='Enter your phone number without whitespaces'/> <br/>\n";
-print "Mail: <input type=\"email\" size=\"15\" name=\"Mail\" value=$mail pattern='[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,3}$' title='Must be valid email format'/> <br/><br/>\n";
-
-print "ENSIIE de: <br/>\n";
-
-print "<input type=\"radio\" name=\"ecole\" value=\"Evry\" /> Evry <br/>\n";
-print "<input type=\"radio\" name=\"ecole\" value=\"Strasbourg\" /> Strasbourg <br/><br/>\n";
-
-print "Groupe de TP/TD: <br/>\n";
-
-print "<input type=\"radio\" name=\"gpe\" value=\"1.1\" /> 1.1 \n";
-print "<input type=\"radio\" name=\"gpe\" value=\"1.2\" /> 1.2 <br/>\n";
-print "<input type=\"radio\" name=\"gpe\" value=\"2.1\" /> 2.1 \n";
-print "<input type=\"radio\" name=\"gpe\" value=\"2.2\" /> 2.2 <br/>\n";
-print "<input type=\"radio\" name=\"gpe\" value=\"3.1\" /> 3.1 \n";
-print "<input type=\"radio\" name=\"gpe\" value=\"3.2\" /> 3.2 <br/>\n";
-print "<input type=\"radio\" name=\"gpe\" value=\"4.1\" /> 4.1 \n";
-print "<input type=\"radio\" name=\"gpe\" value=\"4.2\" /> 4.2 <br/>\n";
-print "<input type=\"radio\" name=\"gpe\" value=\"0\" /> Pas de groupe<br/>\n<br/>\n";
-
-print "Membre de: <ul>\n";
-
-print "<input type='checkbox' name='assoc' value=\"aperitife\">AperItIfE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"arise\">ARISE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"astronomiie\">Astronomiie<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"manga\">Bakaclub<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"bda\">BDA<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"bdsf\">BDSF<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"aeiie\">Bureau des Eleves<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"cccm\">CCCM<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"cid\">CID<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"comdiie\">comDiie<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"craftiie\">CraftIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"cuisine\">CuIsInE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"dansiie\">Dansiie<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"diese\">Dièse<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"echequiie\">Echequiie<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"forumiie\">ForumIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"gala\">Gala<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"guiilde\">GuIIldE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"humaniie\">HUMANIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"iiepp\">IIE++<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"iimage\">IImagE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"iimonde\">IImondE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"i-tv\">i-TV<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"lanpartiie\">LanPartIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"bar\">Le Bar(c)<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"liien\">Liien<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"ludiie\">LudIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"lumiiere\">LumIIEre<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"magiie\">MagIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"muzzik\">Muzzik'<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"nightiies\">NightIIE's<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"robot\">ORiGiNe<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"securitiie\">SecuritIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"radioactive\">RadIoactIvE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"realitiie\">RealitIIE<br/>\n";
-print "<input type='checkbox' name='assoc' value=\"resiie\">ResIIE<br/>\n";
-
-print "</ul></p>\n";
-
-print "Mot de passe : <input type='password' name='psw' value=$mdp pattern=\"(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}\" title='Must contain at least one number and one uppercase and lowercase letter, and at least 8 or more characters'/>\n";
-print "Vérification du mot de passe : <input type='password' name='psw2' value=$mdp pattern=\"(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,}\" title='Must contain at least one number and one uppercase and lowercase letter, and at least 8 or more characters'/>\n";
-
-print "<p><input type=\"submit\" value=\"Valider\" name=\"validation\" /></p>\n";
-
-print "</form>\n";
-
-retourAuMenu();
-
-pied();
diff --git a/Code/email.html b/Code/email.php
similarity index 75%
rename from Code/email.html
rename to Code/email.php
index dab42ae1a7a787b78d9c9acdd0f2291c57b9a22c..fd8ee970180be233e6475f8ddaaf6d1689c38616 100644
--- a/Code/email.html
+++ b/Code/email.php
@@ -1,16 +1,9 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <link rel="stylesheet" href="style_mail.css" type="text/css">
-    </head>
-    <body>
-
     <?php
-        enTete("Contact admin",$_SESSION['nomUser']);
+        session_start();
+        include('mise_en_page.php');
+        enTete("Contactez l'administrateur !",$_SESSION['nomUser']);
     ?>
 
-    <h2>Contactez l'administrateur !</h2>
-
     <script src="checkForm.js"></script>
 
         <form action="MAILTO:saha@ensiie.fr" name="email" method="get" onsubmit="return validateForm4()" enctype="text/plain">
@@ -32,7 +25,7 @@
 
         <p id="msg"></p>
 
-        <p class='down'><a href="accueil.php">Retour au menu</a> || <a href='email.html' class='button2'> Contact admin</a></p>
-
-    </body>
-</html>
+        <?php
+            retourAuMenu();
+            pied();
+        ?>
diff --git a/Code/form_recherche_lien_de_parente.php b/Code/form_recherche_lien_de_parente.php
new file mode 100644
index 0000000000000000000000000000000000000000..f3be2f24eae494dc79b39e29120b95cd2ae2ab2a
--- /dev/null
+++ b/Code/form_recherche_lien_de_parente.php
@@ -0,0 +1,36 @@
+        <?php
+            session_start();
+            include("mise_en_page.php");
+            enTete("Recherche dans l'arbre généalogique",$_SESSION['nomUser']);
+        ?>
+        <script src="checkForm.js"></script>
+        <form name="search_people" action="recherche_lien_de_parente.php" method="get" onsubmit="return validateForm1()">
+            <input type='hidden' name='submitted' value='1'/>
+            Lien de parenté :  <select name="Type_de_recherche">
+                <option value="1">Parrains</option>
+                <option value="2">Filleuls</option>
+                <option value="3">Parrains et Filleuls</option>
+            </select><br/><br/>
+            <fieldset>
+                <legend>Informations sur la première personne</legend>
+                Nom: <input type="text" size="40" name="nom1" pattern="[A-Z][a-zA-Z'-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>
+                Prénom: <input type="text" size="40" name="prenom1" pattern="[A-Z][a-zA-Z-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>
+                Surnom: <input type="text" size="40" name="surnom1" pattern="[^'()\[\]{}\\/\x22]+" title="Cannot contain {,(,[,),],},',/,\ or ''"/><br/>
+                Promo: <input type="number" size="4" min="1968" max="2025" minlength="4" maxlength="4" name="promo1" /><br/>
+            </fieldset><br/>
+            <fieldset>
+                <legend>Informations sur la deuxième personne</legend>
+                Nom: <input type="text" size="40" name="nom2" pattern="[A-Z][a-zA-Z'-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>
+                Prénom: <input type="text" size="40" name="prenom2" pattern="[A-Z][a-zA-Z-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>
+                Surnom: <input type="text" size="40" name="surnom2" pattern="[^'()\[\]{}\\/\x22]+" title="Cannot contain {,(,[,),],},',/,\ or ''"/><br/>
+                Promo: <input type="number" size="4" min="1968" max="2025" minlength="4" maxlength="4" name="promo2" /><br/>
+            </fieldset><br/>
+            <input type="submit" value="Rechercher" name="Bouton1"/>
+            <input type="reset" value="Annuler"/>
+        </form>
+        <br/><br/>
+        <p id="msg"></p>
+        <?php
+            retourAuMenu();
+            pied();
+        ?>
\ No newline at end of file
diff --git a/Code/recherche_personne.html b/Code/form_recherche_personne.php
similarity index 74%
rename from Code/recherche_personne.html
rename to Code/form_recherche_personne.php
index 9e2cf4a8731afcbddf0ab0d21afeee544ba1924d..79bae03653876fca478952532f385e4494b38437 100644
--- a/Code/recherche_personne.html
+++ b/Code/form_recherche_personne.php
@@ -1,17 +1,12 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <link rel="stylesheet" href="style.css" type="text/css">
-        <link rel="" href="" type="">
-        <meta charset="UTF-8"/>
-        <title>Recherche dans l'arbre généalogique</title>
-    </head>
-    <body>
-        <h1>Recherche dans l'arbre généalogique</h1>
+<?php
+    session_start();
+    include("mise_en_page.php");
+    enTete("Recherche dans l'arbre généalogique",$_SESSION['nomUser']);
+?>
         <script src="checkForm.js"></script>
         <form name="search_people" action='recherche_personne.php' method="get" onsubmit="return validateForm1()">
             <input type='hidden' name='submitted' value='1'/>
-            Type de Recherche :  <select name="Type de recherche">
+            Type de Recherche :  <select name="Type_de_recherche">
                 <option value="1">Parrains</option>
                 <option value="2">Filleuls</option>
                 <option value="3">Parrains et Filleuls</option>
@@ -27,6 +22,8 @@
             <input type="reset" value="Annuler"/>
         </form>
         <br/><br/>
-        <p id="msg"></p>  /* Rq : A rajouter dans recherche_personne.php ? */
-    </body>
-</html>
\ No newline at end of file
+        <p id="msg"></p>
+<?php
+retourAuMenu();
+pied();
+?>
\ No newline at end of file
diff --git a/Code/mise_en_page.php b/Code/mise_en_page.php
index af6ceeef1e2899919209c5b0dcce3bae39e2efd6..42d6bae5d82cd583999c814c089ad23044651b9f 100644
--- a/Code/mise_en_page.php
+++ b/Code/mise_en_page.php
@@ -29,7 +29,7 @@ function enTete($titre, $nomUser) {
     else { /* On n'est pas connecté */
         print "<form action='accueil.php' method='get'>";
         print "<p class='up'>Login: <input type=\"text\" size=\"8\" name=\"nomUser\"/>\n";
-        print "Mot de passe: <input type=\"text\" size=\"8\" name=\"mdp\"/>\n";
+        print "Mot de passe: <input type='password' size=\"8\" name=\"mdp\"/>\n";
         print "<input type=\"submit\"  value=\"Connecter\" name=\"connecter\" /></p>\n";
         print "</form>";
         print "<form action='creer_profil1.php' method='post'>";
@@ -48,14 +48,9 @@ function pied(){
 
 }
 
-/* Fonction qui renvoie à la page de contact admin */
-function contactAdmin() {
-    print "<p><a href='email.html' class='button2'>Contact admin</a></p>";
-}
-
 /* Fonction qui renvoie au menu et contact admin */
 function retourAuMenu()
 {
     print "<p class='down'><a href=\"accueil.php\">Retour au menu</a> || ";
-    print "<a href='email.html' class='button2'> Contact admin</a></p>";
+    print "<a href='email.php' class='button2'> Contact admin</a></p>";
 }
diff --git a/Code/profil_modif.php b/Code/profil_modif.php
index 9c811d9f0555748fb0dc7c759d84eacd4931f409..76df3dea14c82970002e75fce89c642a531ff4c2 100644
--- a/Code/profil_modif.php
+++ b/Code/profil_modif.php
@@ -1,208 +1,224 @@
 <?php
 session_start();
 
+require_once ("config_s.php");
 include_once("mise_en_page.php");
 include_once("profil_vision.php");
 
 
-// $mdp $nomBase et $nomUser doivent exister et contenir le mot de passe
-// le nom de la base et le nom utilisateur pour PostgreSQL
-// ces variables sont passees en variables de session
-
-
-$co = $_SESSION['co'];
+/* Variables de session */
 $nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
 $admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
 
+/* Variables issues du formulaire */
 $login = $_GET['loginUser'];
-$membre = $_GET['Mmembre'];
-$profil = $_GET['Mprofil'];
+$membre = $_GET['Mmembre']; /* Si c'est un administrateur qui veut modifier les infos d'un autre membre, $membre est à true */
+$profil = $_GET['Mprofil']; /* Si c'est un membre qui veut modifier ses infos, $profil est à true */
 
 
 if ($profil) $login = $nomUser;
 
-/* On prend les variables Nom, Prenom, Surnom, Promo, date de naissance, tel, mail, lieu d'étude, gpe de TD, array d'assoc grace a consult */
-list($nom, $prenom, $surnom, $promo, $ddn, $tel, $mail, $ecole, $gpe, $assocs) = consult($login, $nomBase, $nomUser, $mdp);
-
-/* Si le nom est -2, on n'a pas réussi à se connecter à la BD */
-if ($nom == -2) {
-    print "<p class = 'erreur'>Impossible de vérifier si le nom est valide, testez votre connexion internet.</p>";
-    pied();
-}
-
-elseif ($membre && !$admin) print "<p class = 'erreur'>Erreur lors de l'attribution des droits, contactez l'administrateur.</p>";
-elseif (($membre && !$login) || $nom == -1) {
-    enTete("Saisir le nom du membre", $nomUser);
-
-    print "<p class = 'erreur'>Nom incorrect</p>";
-    print "<form action=\"profil_modif.php\" method='get'\n>";
-    print "Nom du membre à changer : <input type=\"text\" size=\"8\" name=\"loginUser\"/> <br/> \n"; /* Rq : c'est le login ou le nomUser ici ? */
-    print "<input type=\"submit\" value=\"Autre membre\" name=\"Mmembre\" /></p>";
-    print "</form>";
-}
+if ($membre && !$admin) print "<p class = 'erreur'>Erreur lors de l'attribution des droits, contactez l'administrateur.</p>";
 
 else {
-    enTete("Modification des données personnelles", $nomUser);
-    
-    if ($admin) {
-        print "<h4>Informations principales : </h4>\n";
-        print "<form action=\"validation_modif.php\" method=\"get\">";
-        print "<p>Nom: <input type=\"text\" size=\"8\" name=\"nomN\" value='" . htmlentities($nom) . "'/> <br/><br/>\n ";
-        print "Prénom: <input type=\"text\" size=\"8\" name=\"prenomN\" value='" . htmlentities($prenom) . "'/> <br/></p> \n";
-    }
-    else {
-        print "<h4>Informations principales (non modifiables): </h4>\n";
-        print "<p>Nom: $nom <br/><br/>\n";
-        print "Prénom: $prenom <br/></p>\n";
-        print "<form action=\"validation_modif.php\" method=\"get\">";
-    }
+    if ($login != NULL && $login != "") { /* Si le login est non nul */
 
-    print "<h4>Données personnelles: </h4>\n";
-
-    print "<p>Surnom: <input type=\"text\" size=\"8\" name=\"surnomN\" value='" . htmlentities($surnom) . "'/> <br/><br/>\n ";
-    print "Promo: <input type=\"text\" size=\"8\" name=\"promoN\" value='" . htmlentities($promo) . "'/> <br/><br/> \n";
-    /* Pour la ddn, voir javascript pour améliorer la facilité de la saisie */
-    print "Date de naissance (AAAA-MM-JJ): <input type=\"text\" size=\"8\" name=\"ddnN\" value='" . htmlentities($ddn) . "' /><br/><br/>\n";
-    print "Téléphone: <input type=\"text\" size=\"10\" name=\"telN\" value='" . htmlentities($tel) . "'/> <br/><br/> \n";
-    print "Mail: <input type=\"text\" size=\"15\" name=\"mailN\" value='" . htmlentities($mail) . "' /> <br/><br/>\n";
-
-    print "ENSIIE de: <br />\n"; /* switch à revoir ! */
-    switch ($ecole) {
-        case "Evry":
-            print "<input type=\"radio\" name=\"ecoleN\" value=\"Evry\" checked/> Evry <br/>\n";
-            print "<input type=\"radio\" name=\"ecoleN\" value=\"Strasbourg\" /> Strasbourg <br/><br/>\n";
-            break;
-        case "Strasbourg" :
-            print "<input type=\"radio\" name=\"ecoleN\" value=\"Evry\" /> Evry <br/>\n";
-            print "<input type=\"radio\" name=\"ecoleN\" value=\"Strasbourg\" checked/> Strasbourg <br/><br/>\n";
-            break;
-    }
+        /* On prend les variables Nom, Prenom, Surnom, Promo, date de naissance, tel, mail, lieu d'étude, gpe de TD, array d'assoc grace a consult */
+        list($nom, $prenom, $surnom, $promo, $ddn, $tel, $mail, $ecole, $gpe, $assocs) = consult($login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
+        /* Si le nom est -2 ou -3, on n'a pas réussi à se connecter à la table ou à la BD */
+        if ($nom == -3) {
+            print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+        }
 
-    print "Groupe de TP/TD: <br />\n"; /* switch à revoir ! */
-    switch ($gpe) {
-        case "1.1" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" checked /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "1.2" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" checked /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "2.1" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" checked /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "2.2" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" checked /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "3.1" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\"  checked/> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "3.2" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" checked /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "4.1" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" checked /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        case "4.2" :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" checked /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
-            break;
-        default :
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
-            print "<input type=\"radio\" name=\"gpeN\" value=\"0\" checked /> Pas de groupe<br/>\n";
-            break;
-    }
-    print "<br/>";
+        elseif ($nom == -2) {
+            print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+        }
 
-    $assoc = infoAssoc($nomBase, $nomUser, $mdp);
+        elseif ($nom == -1) { /* Si le login n'est pas bon, on redemande le login en retournant sur cette page avec un nouveau login */
+            enTete("Saisir le nom du membre", $nomUser);
 
-    print "Membre de: <ul>";
-    foreach ($assoc as $key => $value) {
-        if (in_array($value, $assocs)) {
-            print "<li><input type='checkbox' name=$key value='ajout' checked> $value </li>";
+            print "<p class = 'erreur'>Le login n'existe pas</p>";
+            print "<form action=\"profil_modif.php\" method='get'\n>";
+            print "Login du membre à changer : <input type=\"text\" size=\"8\" name=\"loginUser\"/> <br/> \n";
+            print "<input type=\"submit\" value=\"Autre membre\" name=\"Mmembre\" /></p>";
+            print "</form>";
+        }
+
+        else {
+            enTete("Modification des données personnelles", $nomUser);
+
+            if ($admin) {
+                print "<h4>Informations principales : </h4>\n";
+                print "<form action=\"validation_modif.php\" method=\"get\">";
+                print "<p>Nom: <input type=\"text\" size=\"8\" name=\"nomN\" value='" . htmlentities($nom) . "'/> <br/><br/>\n ";
+                print "Prénom: <input type=\"text\" size=\"8\" name=\"prenomN\" value='" . htmlentities($prenom) . "'/> <br/></p> \n";
+            } else {
+                print "<h4>Informations principales (non modifiables): </h4>\n";
+                print "<p>Nom: $nom <br/><br/>\n";
+                print "Prénom: $prenom <br/></p>\n";
+                print "<form action=\"validation_modif.php\" method=\"get\">";
+            }
+
+            print "<h4>Données personnelles: </h4>\n";
+
+            print "<p>Surnom: <input type=\"text\" size=\"8\" name=\"surnomN\" value='" . htmlentities($surnom) . "'/> <br/><br/>\n ";
+            print "Promo: <input type=\"text\" size=\"8\" name=\"promoN\" value='" . htmlentities($promo) . "'/> <br/><br/> \n";
+            /* Pour la ddn, voir javascript pour améliorer la facilité de la saisie */
+            print "Date de naissance (AAAA-MM-JJ): <input type=\"text\" size=\"8\" name=\"ddnN\" value='" . htmlentities($ddn) . "' /><br/><br/>\n";
+            print "Téléphone: <input type=\"text\" size=\"10\" name=\"telN\" value='" . htmlentities($tel) . "'/> <br/><br/> \n";
+            print "Mail: <input type=\"text\" size=\"15\" name=\"mailN\" value='" . htmlentities($mail) . "' /> <br/><br/>\n";
+
+            print "ENSIIE de: <br />\n"; /* switch à revoir ! */
+            switch ($ecole) {
+                case "Evry":
+                    print "<input type=\"radio\" name=\"ecoleN\" value=\"Evry\" checked/> Evry <br/>\n";
+                    print "<input type=\"radio\" name=\"ecoleN\" value=\"Strasbourg\" /> Strasbourg <br/><br/>\n";
+                    break;
+                case "Strasbourg" :
+                    print "<input type=\"radio\" name=\"ecoleN\" value=\"Evry\" /> Evry <br/>\n";
+                    print "<input type=\"radio\" name=\"ecoleN\" value=\"Strasbourg\" checked/> Strasbourg <br/><br/>\n";
+                    break;
+            }
+
+
+            print "Groupe de TP/TD: <br />\n";
+            switch ($gpe) {
+                case "1.1" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" checked /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "1.2" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" checked /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "2.1" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" checked /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "2.2" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" checked /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "3.1" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\"  checked/> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "3.2" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" checked /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "4.1" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" checked /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                case "4.2" :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" checked /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" /> Pas de groupe<br/>\n";
+                    break;
+                default :
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.1\" /> 1.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"1.2\" /> 1.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.1\" /> 2.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"2.2\" /> 2.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.1\" /> 3.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"3.2\" /> 3.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.1\" /> 4.1 \n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"4.2\" /> 4.2 <br/>\n";
+                    print "<input type=\"radio\" name=\"gpeN\" value=\"0\" checked /> Pas de groupe<br/>\n";
+                    break;
+            }
+            print "<br/>";
+
+            $assoc = infoAssoc($nomHost, $nomBase, $nomRoot, $mdpRoot); /* On demande toutes les association présentes dans la table Assoc */
+
+            print "Membre de: <ul>";
+            foreach ($assoc as $key => $value) {
+                if (in_array($value, $assocs)) {
+                    print "<li><input type='checkbox' name=$key value='ajout' checked> $value </li>";
+                } else print "<li><input type='checkbox' name=$key value='ajout'> $value </li>";
+            }
+            print "</ul></p>";
+
+
+            print "<input type=\"hidden\" value=$login name=\"login\" />";
+
+            print "<p><input type=\"submit\" value=\"Valider\" name=\"validation\" /></p>\n";
+
+            print "</form><br/>";
         }
-        else print "<li><input type='checkbox' name=$key value='ajout'> $value </li>";
     }
-    print "</ul></p>";
 
 
-    print "<input type=\"hidden\" value=$login name=\"login\" />";
+    elseif ($membre && !$login) { /* Le login donné est nul */
+        enTete("Saisir le nom du membre", $nomUser);
 
-    print "<p><input type=\"submit\" value=\"Valider\" name=\"validation\" /></p>\n";
+        print "<p class = 'erreur'>Login vide</p>";
+        print "<form action=\"profil_modif.php\" method='get'\n>";
+        print "Login du membre à changer : <input type=\"text\" size=\"8\" name=\"loginUser\"/> <br/> \n";
+        print "<input type=\"submit\" value=\"Autre membre\" name=\"Mmembre\" /></p>";
+        print "</form>";
+    }
 
-    print "</form><br/>";
-}
 
+}
 retourAuMenu();
 pied();
\ No newline at end of file
diff --git a/Code/profil_vision.php b/Code/profil_vision.php
index b2165b624e40d4d8a6e7ca373306e15448794893..ff171e34e1926b3f56a8f8db501211a38b586328 100644
--- a/Code/profil_vision.php
+++ b/Code/profil_vision.php
@@ -1,13 +1,14 @@
 <?php
 
 /* Renvoie un array : Nom, Prenom, Surnom, Promo, date de naissance, tel, mail, lieu d'étude, gpe de TD, array d'assoc
-           (-1,0,0,0,0,0,0,0,0,0) si on n'a pas réussi à se connecter à la table,
-           (-2,0,0,0,0,0,0,0,0,0) si on n'a pas réussi à se connecter à la base
+           (-1,0,0,0,0,0,0,0,0,0) si le login n'existe pas,
+           (-2,0,0,0,0,0,0,0,0,0) si on n'a pas réussi à se connecter à la table,
+           (-3,0,0,0,0,0,0,0,0,0) si on n'a pas réussi à se connecter à la base
     Permet de connaître toutes les informations d'un membre en fonction de son login */
-function consult($login, $nomBase,$nomUser,$mdp)
+function consult($login, $nomHost, $nomBase, $nomRoot, $mdpRoot)
 {
     /* On se connecte a la base */
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) )
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
     {
         /* Selection des informations remplies lors de l'inscription */
 	    $commande = pg_query($DB, "SELECT nom_eleve, prenom, surnom, promo, ddn, tel, mail, lieu, gpe_td FROM eleve WHERE login_eleve='$login'");
@@ -85,24 +86,30 @@ function consult($login, $nomBase,$nomUser,$mdp)
 
 
 /* Renvoie un booléen : Admin si la connexion à la table a eu lieu,
-           -1 si on n'a pas réussi à se connecter à la table,
-           -2 si on n'a pas réussi à se connecter à la base
+           -1 si le login et mdp donnés ne sont pas correspondants,
+           -2 si on n'a pas réussi à se connecter à la table,
+           -3 si on n'a pas réussi à se connecter à la base
     Permet de savoir si un membre est admin ou pas en fonction de son login ($nomUser) */
-function infoAdmin($nomBase, $nomUser, $mdp) {
+function connexion($nomUser, $mdp, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) )
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
     {
         /* Selection des informations remplies lors de l'inscription */
-        $commande = pg_query($DB, "SELECT admins FROM eleve WHERE login_eleve='$nomUser'");
+        $commande = pg_query($DB, "SELECT admins FROM eleve WHERE login_eleve='$nomUser' AND mdp='$mdp'");
 
         /* On teste si la commande existe */
         if ($commande) {
-            $admin = pg_fetch_array($commande)['admins'];
+            $ligne = pg_fetch_array($commande);
+
+            if ($ligne) {
+                $admin = $ligne['admins'];
+            }
+            else $admin = -1;
         }
 
         else {
             /* On a pas reussi a se connecter a la table Eleve */
-            $admin = -1;
+            $admin = -2;
         }
 
         pg_close( $DB );
@@ -110,41 +117,42 @@ function infoAdmin($nomBase, $nomUser, $mdp) {
 
     else {
         /* Impossible de se connecter a la BD */
-        $admin = -2;
+        $admin = -3;
     }
 
     return $admin;
 }
 
 
-/* Renvoie un array : Nom, Prénom, Surnom, Promo,
-           (-1,0,0,0) si on n'a pas réussi à se connecter à la table,
-           (-2,0,0,0) si on n'a pas réussi à se connecter à la base
-    Permet de conaître les informations de base d'un membre en fonction de son login */
-function infoBase ($login, $nomBase, $nomUser, $mdp) {
+/* Renvoie un int : 0 si le login peut être créé,
+           -1 si le login existe déjà,
+           -2 si on n'a pas réussi à se connecter à la table,
+           -3 si on n'a pas réussi à se connecter à la base
+    Permet de savoir si on peut créer un profil avec le login donné sans violer la contrainte d'unicité des logins */
+function possible_creer_login ($nomUser, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) )
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
     {
-        /* Selection des informations pour la personne cherchée */
-        $commande = pg_query($DB, "SELECT login_eleve, nom_eleve, prenom, surnom, promo FROM eleve WHERE login_eleve='$login'");
+        /* On vérifie qu'il n'y a pas déjà ce login dans la base */
+        $commande = pg_query($DB, "SELECT login_eleve FROM eleve WHERE login_eleve='$nomUser'");
 
         /* On teste si la commande existe */
         if ($commande) {
             $ligne = pg_fetch_array($commande);
-            $Pnom = $ligne['nom_eleve'];
-            $Pprenom = $ligne['prenom'];
-            $Psurnom = $ligne['surnom'];
-            $Ppromo = $ligne['promo'];
 
-            $retour = array($Pnom, $Pprenom, $Psurnom, $Ppromo);
-            $ligne = pg_fetch_array($commande);
+            if ($ligne) { /* Il y a déjà un utilisateur avec ce login */
+                $reponse = -1;
+            }
 
-            if ($ligne) print "<p class='erreur'>ERREUR INTEGRITE DE LA BASE</p>"; /* Le login est unique */
+            else {
+                /* On peut rajouter un utilisateur avec ce login */
+                $reponse = 0;
+            }
         }
 
         else {
             /* On a pas reussi a se connecter a la table Eleve */
-            $retour = array(-1,0,0,0);
+            $reponse = -2;
         }
 
         pg_close( $DB );
@@ -152,20 +160,54 @@ function infoBase ($login, $nomBase, $nomUser, $mdp) {
 
     else {
         /* Impossible de se connecter a la BD */
-        $retour = array(-2,0,0,0);
+        $reponse = -3;
     }
 
-    return $retour;
+    return $reponse;
 }
 
 
-/* Renvoie un array de taille variable : Login(s)
-           -1 si on n'a pas réussi à se connecter à la table,
-           -2 si on n'a pas réussi à se connecter à la base
+/* Renvoie un int : 0 si le login a été créé,
+           -2 si on n'a pas réussi à se connecter à la table,
+           -3 si on n'a pas réussi à se connecter à la base
+    Permet de savoir si on peut créer un profil avec le login donné sans violer la contrainte d'unicité des logins */
+function creer_profil($login, $nom, $prenom, $mail, $mdp, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
+
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
+    {
+        /* Selection des informations remplies lors de l'inscription */
+        $commande = pg_query($DB, "INSERT INTO eleve(login_eleve,nom_eleve,prenom,mail,lieu,admins,mdp) VALUES ('$login','$nom','$prenom','$mail','Evry','n','$mdp')");
+
+        /* On teste si la commande existe */
+        if ($commande) {
+            $reponse = 0;
+        }
+
+        else {
+            /* On a pas reussi a se connecter a la table Eleve */
+            $reponse = -2;
+        }
+
+        pg_close( $DB );
+    }
+
+    else {
+        /* Impossible de se connecter a la BD */
+        $reponse = -3;
+    }
+
+    return $reponse;
+}
+
+
+/* Renvoie un array de taille variable : nbLogin et autant de login(s)
+           (-1,0) si on n'a pas trouvé de login,
+           (-2,0) si on n'a pas réussi à se connecter à la table,
+           (-3,0)si on n'a pas réussi à se connecter à la base
     Permet de retrouver les logins possibles correspondant à un nom et/ou prénom et/ou surnom et promo */
-function infoLogin($nom, $prenom, $surnom, $promo, $nomBase, $nomUser, $mdp) {
+function infoLogin($nom, $prenom, $surnom, $promo, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) )
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
     {
         /* Selection de la commande en fonction des informations données */
         if ($nom != "" && $prenom != "" && $surnom != "") { /* nom et prénom et surnom */
@@ -193,30 +235,36 @@ function infoLogin($nom, $prenom, $surnom, $promo, $nomBase, $nomUser, $mdp) {
         /* On teste si la commande existe et on reccueille les informations pour chaque login possible */
         if ($commande) {
             $ligne = pg_fetch_array($commande);
-            $Plogin = $ligne['login_eleve'];
-            $Pnom = $ligne['nom_eleve'];
-            $Pprenom = $ligne['prenom'];
-            $Psurnom = $ligne['surnom'];
-            $Ppromo = $ligne['promo'];
-            $nb = pg_num_rows($commande);
-
-            $retour = array($nb, array($Plogin, $Pnom, $Pprenom, $Psurnom, $Ppromo));
-            $ligne = pg_fetch_array($commande);
-
-            while ($ligne) {
+            if ($ligne) {
                 $Plogin = $ligne['login_eleve'];
                 $Pnom = $ligne['nom_eleve'];
                 $Pprenom = $ligne['prenom'];
                 $Psurnom = $ligne['surnom'];
-                array_push($retour, array($Plogin, $Pnom, $Pprenom, $Psurnom, $Ppromo));
+                $Ppromo = $ligne['promo'];
+                $nb = pg_num_rows($commande);
 
+                $retour = array($nb, array($Plogin, $Pnom, $Pprenom, $Psurnom, $Ppromo));
                 $ligne = pg_fetch_array($commande);
+
+                while ($ligne) {
+                    $Plogin = $ligne['login_eleve'];
+                    $Pnom = $ligne['nom_eleve'];
+                    $Pprenom = $ligne['prenom'];
+                    $Psurnom = $ligne['surnom'];
+                    array_push($retour, array($Plogin, $Pnom, $Pprenom, $Psurnom, $Ppromo));
+
+                    $ligne = pg_fetch_array($commande);
+                }
+            }
+            else {
+                /* On n'a pas trouvé de login */
+                $retour = array(-1,0);
             }
         }
 
         else {
-            /* On a pas reussi a se connecter a la table Eleve /*/
-            $retour = -1;
+            /* On a pas reussi a se connecter a la table Eleve */
+            $retour = array(-2,0);
         }
 
         pg_close( $DB );
@@ -224,7 +272,68 @@ function infoLogin($nom, $prenom, $surnom, $promo, $nomBase, $nomUser, $mdp) {
 
     else {
         /* Impossible de se connecter a la BD */
-        $retour = -2;
+        $retour = array(-3,0);
+    }
+
+    return $retour;
+}
+
+
+
+/* Renvoie un array de taille 2 : Login, mail
+           (-1,0) si on n'a pas réussi à se connecter à la table,
+           (-2,0) si on n'a pas réussi à se connecter à la base
+           (-3,0) si on a trouvé plus d'1 login
+           (-4,0) si on n'a pas trouvé le membre
+    Permet de retrouver le login d'un membre et son mail */
+function infoMail($nom, $prenom, $surnom, $promo, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
+
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
+    {
+        /* Selection de la commande en fonction des informations données */
+        if ($promo != "" && $surnom != "") {
+            $commande = pg_query($DB, "SELECT login_eleve, mail FROM eleve WHERE nom_eleve='$nom' AND prenom='$prenom' AND surnom='$surnom' AND promo='$promo'");
+        }
+        elseif ($promo != "") {
+            $commande = pg_query($DB, "SELECT login_eleve, mail FROM eleve WHERE nom_eleve='$nom' AND prenom='$prenom' AND promo='$promo'");
+        }
+        elseif ($surnom != "") {
+            $commande = pg_query($DB, "SELECT login_eleve, mail FROM eleve WHERE nom_eleve='$nom' AND prenom='$prenom' AND surnom='$surnom'");
+        }
+        else { /* nom et prénom */
+            $commande = pg_query($DB, "SELECT login_eleve, mail FROM eleve WHERE nom_eleve='$nom' AND prenom='$prenom'");
+        }
+
+        /* On teste si la commande existe et on reccueille les informations pour chaque login possible */
+        if ($commande) {
+            $ligne = pg_fetch_array($commande);
+
+            if ($ligne != NULL) {
+                $Plogin = $ligne['login_eleve'];
+                $Pmail = $ligne['mail'];
+
+                $retour = array($Plogin, $Pmail);
+
+                if (pg_fetch_array($commande) != NULL) { /* Si on trouve un autre login, on renvoie -3 */
+                    return array(-3,0);
+                }
+            }
+            else {
+                return array(-4,0);
+            }
+        }
+
+        else {
+            /* On a pas reussi a se connecter a la table Eleve */
+            return array(-1,0);
+        }
+
+        pg_close( $DB );
+    }
+
+    else {
+        /* Impossible de se connecter a la BD */
+        return array(-2,0);
     }
 
     return $retour;
@@ -235,10 +344,10 @@ function infoLogin($nom, $prenom, $surnom, $promo, $nomBase, $nomUser, $mdp) {
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Permet de connaître toutes les associations de la table Assoc */
-function infoAssoc($nomBase, $nomUser, $mdp) {
+function infoAssoc($nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
     /* On se connecte a la base */
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) )
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) )
     {
         /* Selection de toutes les associations */
         $commande = pg_query($DB, "SELECT assoc.nom, assoc.id_assoc FROM assoc");
@@ -286,19 +395,14 @@ function infoAssoc($nomBase, $nomUser, $mdp) {
 }
 
 
-
-
-/* POUR LES FONCTIONS RECHPARRAIN ET RECHFILLEUL IL Y A UN BUG A REVOIR */
-
-
 /* Renvoie un array de taille variable : nombre de niveaux, array du nombre de parrain par niveau,
                                          array des liens entre les parrains
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Retourne tous les parrains d'un login */
-function rechParrain($login, $nomBase, $nomUser, $mdp) {
+function rechParrain($login, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         /* On regarde au 1e niveau de parainneté et on stocke les parrains trouvés */
         $conn = pg_query($DB, "SELECT parrain FROM liens WHERE filleul='$login'");
@@ -410,9 +514,9 @@ function rechParrain($login, $nomBase, $nomUser, $mdp) {
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Retourne tous les filleuls d'un login */
-function rechFilleul($login, $nomBase, $nomUser, $mdp) {
+function rechFilleul($login, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         /* On regarde au 1e niveau de parainneté et on stocke les filleuls trouvés */
         $conn = pg_query($DB, "SELECT filleul FROM liens WHERE parrain='$login'");
@@ -513,16 +617,15 @@ function rechFilleul($login, $nomBase, $nomUser, $mdp) {
 
 
 
-
 /* Renvoie un array de taille variable : nombre de parrains communs, et autant d'array contenant le chemin pour aller
                                          d'un parrain commun au 1er login en argument et celui pour aller au 2e login
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Permet de retrouver un "chemin" par login donné pour aller de chaque parrain trouvé (au même niveau) à ce login */
-function rechLienParrain($login1, $login2, $nomBase, $nomUser, $mdp) {
+function rechLienParrain($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         /* On regarde au 1e niveau de parainneté et on stocke les parrains trouvés */
         $conn1 = pg_query($DB, "SELECT parrain FROM liens WHERE filleul='$login1'");
@@ -711,9 +814,9 @@ function rechLienParrain($login1, $login2, $nomBase, $nomUser, $mdp) {
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Permet de retrouver un "chemin" par login donné pour aller de ce login à chaque filleul trouvé (au même niveau) */
-function rechLienFilleul($login1, $login2, $nomBase, $nomUser, $mdp) {
+function rechLienFilleul($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         /* On regarde au 1e niveau de parainneté et on stocke les filleuls trouvés */
         $conn1 = pg_query($DB, "SELECT filleul FROM liens WHERE parrain='$login1'");
@@ -898,15 +1001,16 @@ function rechLienFilleul($login1, $login2, $nomBase, $nomUser, $mdp) {
 }
 
 
+
 /* Renvoie: 0 si la commande a pu être exécutée
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Modifie la colonne donnée en argument et y met la valeur donnée (ou supprime si nulle) pour un login donné */
-function modifierEleve($nomColonne, $valeur, $login, $nomBase,$nomUser,$mdp)
+function modifierEleve($nomColonne, $valeur, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot)
 {
     /* Connexion à la base */
 
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         /* Test si la valeur est non nulle */
         if ($valeur != "") {
@@ -932,10 +1036,10 @@ function modifierEleve($nomColonne, $valeur, $login, $nomBase,$nomUser,$mdp)
            -1 si on n'a pas réussi à se connecter à la table,
            -2 si on n'a pas réussi à se connecter à la base
     Supprime ou ajoute (selon $ajout) une association $id dans la table Assoc_eleve pour un login donné */
-function modifierAssoc_eleve($ajout, $login, $id, $nomBase, $nomUser, $mdp) {
+function modifierAssoc_eleve($ajout, $login, $id, $nomHost, $nomBase, $nomRoot, $mdpRoot) {
 
     /* On se connecte a la base */
-    if ( $DB = pg_connect("host=localhost user=$nomUser dbname=$nomBase password=$mdp" ) ) {
+    if ( $DB = pg_connect("host=$nomHost user=$nomRoot dbname=$nomBase password=$mdpRoot" ) ) {
 
         if ($ajout == null) { /* Suppression */
             $commande = pg_query($DB, "DELETE FROM assoc_eleve WHERE (login_eleve='$login' AND id_assoc='$id')");
diff --git a/Code/recherche_lien_de_parente.html b/Code/recherche_lien_de_parente.html
deleted file mode 100644
index c451a4d9b884155abcd95bce713cffd3d3419b0c..0000000000000000000000000000000000000000
--- a/Code/recherche_lien_de_parente.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<!DOCTYPE html>
-<html>
-    <head>
-        <link rel="stylesheet" href="style_form.css" type="text/css">
-        <meta charset="UTF-8"/>
-    </head>
-    <body>
-        <?php
-            include("mise_en_page.php");
-            enTete("Recherche",$_SESSION['nomUser']);
-        ?>
-        <h1>Recherche dans l'arbre généalogique</h1>
-        <script src="checkForm.js"></script>
-        <form name="search_people" action="recherche_lien_de_parente.php" method="get" onsubmit="return validateForm1()">
-            <input type='hidden' name='submitted' value='1'/>
-            Lien de parenté :  <select name="Type de recherche">
-                <option >Parrains</option>
-                <option >Filleuls</option>
-                <option >Parrains et Filleuls</option>
-            </select><br/><br/>
-            <fieldset>
-                <legend>Informations sur la première personne</legend>
-                Nom: <input type="text" size="40" name="nom" pattern="[A-Z][a-zA-Z'-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>
-                Prénom: <input type="text" size="40" name="prenom" pattern="[A-Z][a-zA-Z-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>
-                Surnom: <input type="text" size="40" name="surnom" pattern="[^'()\[\]{}\\/\x22]+" title="Cannot contain {,(,[,),],},',/,\ or ''"/><br/>
-                Promo: <input type="number" size="4" min="1960" max="2020" minlength="4" maxlength="4" name="promo" /><br/>
-            </fieldset><br/>
-            <fieldset>
-                <legend>Informations sur la deuxième personne</legend>
-                Nom: <input type="text" size="40" name="nom" pattern="[A-Z][a-zA-Z'-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : Last Name or Last-Name)'/><br/>
-                Prénom: <input type="text" size="40" name="prenom" pattern="[A-Z][a-zA-Z-.\s]{1,}" title='Must start with one uppercase then have only lowercases (if composed name : First-Name)'/><br/>
-                Surnom: <input type="text" size="40" name="surnom" pattern="[^'()\[\]{}\\/\x22]+" title="Cannot contain {,(,[,),],},',/,\ or ''"/><br/>
-                Promo: <input type="number" size="4" min="1968" max="2025" minlength="4" maxlength="4" name="promo" /><br/>
-            </fieldset><br/>
-            <input type="submit" value="Rechercher" name="Bouton1"/>
-            <input type="reset" value="Annuler"/>
-        </form>
-        <br/><br/>
-        <p id="msg"></p>
-        <p class='down'><a href="accueil.php">Retour au menu</a> || <a href='email.html' class='button2'> Contact admin</a></p>
-    </body>
-</html>
diff --git a/Code/recherche_lien_de_parente.php b/Code/recherche_lien_de_parente.php
index b58cd097a0d91bc884321f0d7315302668833954..6320ef7900c3c1cfe26476750188327da0e358e7 100644
--- a/Code/recherche_lien_de_parente.php
+++ b/Code/recherche_lien_de_parente.php
@@ -12,29 +12,28 @@
  */
 
 session_start();
-include_once("config_s.php");
-include_once("mise_en_page.php");
+require_once ("config_s.php");
+include_once ("mise_en_page.php");
 include_once ("profil_vision.php");
 
-$choix = $_GET['Type_recherche'];
+
+/* Variables de session */
+$nomUser=$_SESSION['nomUser'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
+/* Variables issues du formulaire */
+$choix = $_GET['Type_de_recherche'];
 
 $nom1 = $_GET['nom1'];
 $prenom1 = $_GET['prenom1'];
 $surnom1 = $_GET['surnom1'];
 $promo1 = $_GET['promo1'];
-$login1 = $nom1.$prenom1;
 
 $nom2 = $_GET['nom2'];
 $prenom2 = $_GET['prenom2'];
 $surnom2 = $_GET['surnom2'];
 $promo2 = $_GET['promo2'];
-$login2 = $nom2.$prenom2;
-
-$nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
-$admin = $_SESSION['admin'];
-$co = $_SESSION['co'];
 
 enTete("Recherche", $nomUser);
 
@@ -42,8 +41,9 @@ enTete("Recherche", $nomUser);
 
 /* Personne 1 */
 print "<h4>Première personne : </h4>";
-$res1 = infoLogin($nom1, $prenom1, $surnom1, $promo1, $nomBase, $nomUser, $mdp);
+$res1 = infoLogin($nom1, $prenom1, $surnom1, $promo1, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 $nb1 = $res1[0];
+
 if ($nb1 == 1) {
     print "<p>Nom : ";
     print $res1[1][1];
@@ -58,9 +58,19 @@ if ($nb1 == 1) {
     $nom1 = $res1[1][1];
     $prenom1 = $res1[1][2];
 }
-elseif ($nb1 == 0) {
+
+elseif ($nb1 == -1) {
     print "<p>La recherche n'a trouvé personne.<br/>";
 }
+
+elseif ($nb1 == -2) {
+    print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($nb1 == -3) {
+    print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
 else {
     print "<p>La recherche a donné $nb1 personnes : <br/>";
     foreach ($res1 as $key => $info) {
@@ -81,8 +91,9 @@ else {
 
 /* Personne 2 */
 print "<h4>Deuxième personne :</h4>";
-$res2 = infoLogin($nom2, $prenom2, $surnom2, $promo2, $nomBase, $nomUser, $mdp);
+$res2 = infoLogin($nom2, $prenom2, $surnom2, $promo2, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 $nb2 = $res2[0];
+
 if ($nb2 == 1) {
     print "<p>Nom : ";
     print $res2[1][1];
@@ -97,9 +108,19 @@ if ($nb2 == 1) {
     $nom2 = $res2[1][1];
     $prenom2 = $res2[1][2];
 }
-elseif ($nb2 == 0) {
+
+elseif ($nb2 == -1) {
     print "<p>La recherche n'a trouvé personne.<br/>";
 }
+
+elseif ($nb2 == -2) {
+    print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($nb2 == -3) {
+    print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
 else {
     print "<p>La recherche a donné $nb2 personnes : <br/>";
     foreach ($res2 as $key => $info) {
@@ -118,20 +139,30 @@ else {
     print "<p>Choisissez un de ces résultats et recommencez la recherche.</p>";
 }
 
+
+
 if ($nb1 == 1 && $nb2 == 1) {
+    if($login1 == $login2) {
+        print "<p>Le lien est plutôt évident ....</p>";
+    }
+    else {
+        print "<form action=\"resultat_lien_parente.php\" method=get>";
+        print "<input type=\"hidden\" value=$login1 name=\"login1\" />";
+        print "<input type=\"hidden\" value=$login2 name=\"login2\" />";
+        print "<input type=\"hidden\" value=$nom1 name=\"nom1\" />";
+        print "<input type=\"hidden\" value=$prenom1 name=\"prenom1\" />";
+        print "<input type=\"hidden\" value=$nom2 name=\"nom2\" />";
+        print "<input type=\"hidden\" value=$prenom2 name=\"prenom2\" />";
+        print "<input type=\"hidden\" value=$choix name=\"choix\" />";
 
-    print "<form action=\"resultat_lien_parente.php\" method=get>";
-    print "<input type=\"hidden\" value=$login1 name=\"login1\" />";
-    print "<input type=\"hidden\" value=$login2 name=\"login2\" />";
-    print "<input type=\"hidden\" value=$nom1 name=\"nom1\" />";
-    print "<input type=\"hidden\" value=$prenom1 name=\"prenom1\" />";
-    print "<input type=\"hidden\" value=$nom2 name=\"nom2\" />";
-    print "<input type=\"hidden\" value=$prenom2 name=\"prenom2\" />";
-    print "<input type=\"hidden\" value=$choix name=\"choix\" />";
-
-    print "<p><input type=\"submit\" value=\"Rechercher\" name=\"validation\" /></p>\n";
-    print "</form>";
+        print "<p><input type=\"submit\" value=\"Rechercher\" name=\"validation\" /></p>\n";
+        print "</form>";
+    }
 }
 
+print "<p><a href='form_recherche_lien_de_parente.php'>Autre recherche</a></p>";
+
 retourAuMenu();
-pied();
\ No newline at end of file
+pied();
+
+?>
\ No newline at end of file
diff --git a/Code/recherche_personne.php b/Code/recherche_personne.php
index efcdaffc8641ad72dfdf779da68823207be9f784..1aec0997e1e935dd430ae2020795060dce561ded 100644
--- a/Code/recherche_personne.php
+++ b/Code/recherche_personne.php
@@ -12,33 +12,33 @@
  */
 
 session_start();
-include_once("config_s.php");
-include_once("mise_en_page.php");
-include_once("profil_vision.php");
+require_once ("config_s.php");
+include_once ("mise_en_page.php");
+include_once ("profil_vision.php");
 
-$choix = $_GET['Type_recherche'];
+
+/* Variables de session */
+$nomUser=$_SESSION['nomUser'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
+/* Variables issues du formulaire */
+$choix = $_GET['Type_de_recherche'];
 
 $nom = $_GET['nom'];
 $prenom = $_GET['prenom'];
 $surnom = $_GET['surnom'];
 $promo = $_GET['promo'];
 
-$nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
-$admin = $_SESSION['admin'];
-$co = $_SESSION['co'];
-$login = $_SESSION['login'];
 
 enTete("Recherche", $nomUser);
 
 /* Normalement, avec le script JS, on doit avoir au moins $nom ou $prenom ou $surnom non nul et $promo non nul */
 
 /* On commence par chercher le login de la personne */
-
 print "<h4>Confirmation personne : </h4>";
 
-$res = infoLogin($nom, $prenom, $surnom, $promo, $nomBase, $nomUser, $mdp);
+$res = infoLogin($nom, $prenom, $surnom, $promo, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 $nb = $res[0];
 
 if ($nb == 1) {
@@ -55,9 +55,19 @@ if ($nb == 1) {
     $nom = $res[1][1];
     $prenom = $res[1][2];
 }
-elseif ($nb == 0) {
+
+elseif ($nb == -1) {
     print "<p>La recherche n'a trouvé personne.<br/>";
 }
+
+elseif ($nb == -2) {
+    print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($nb == -3) {
+    print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
 else {
     print "<p>La recherche a donné $nb personnes : <br/>";
     foreach ($res as $key => $info) {
@@ -79,7 +89,7 @@ else {
 if ($nb == 1) {
 
     print "<form action=\"resultat_personne.php\" method=get>";
-    print "<input type=\"hidden\" value=$login name=\"login\" />";
+    print "<input type=\"hidden\" value=$login name=\"login\" />"; /* $login est forcément défini */
     print "<input type=\"hidden\" value=$nom name=\"nom\" />";
     print "<input type=\"hidden\" value=$prenom name=\"prenom\" />";
     print "<input type=\"hidden\" value=$choix name=\"choix\" />";
@@ -88,5 +98,8 @@ if ($nb == 1) {
     print "</form>";
 }
 
+print "<p><a href='form_recherche_personne.php'>Autre recherche</a></p>";
+
 retourAuMenu();
-pied();
\ No newline at end of file
+pied();
+?>
\ No newline at end of file
diff --git a/Code/resultat_lien_parente.php b/Code/resultat_lien_parente.php
index c12dfb995fc5f81b93404f3a86d4162fbdef1db4..a185b7ea0b24d717db1a4af0a10d7d63e1160069 100644
--- a/Code/resultat_lien_parente.php
+++ b/Code/resultat_lien_parente.php
@@ -9,8 +9,15 @@
 session_start();
 include_once("config_s.php");
 include_once("mise_en_page.php");
-include_once ("profil_vision.php");
+require_once ("profil_vision.php");
 
+
+/* Variables de session */
+$nomUser=$_SESSION['nomUser'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
+
+/* Variables issues du formulaire */
 $choix = $_GET['choix'];
 
 $login1 = $_GET['login1'];
@@ -20,18 +27,12 @@ $prenom1 = $_GET['prenom1'];
 $nom2 = $_GET['nom2'];
 $prenom2 = $_GET['prenom2'];
 
-$nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
-$admin = $_SESSION['admin'];
-$co = $_SESSION['co'];
 enTete("Résultats", $nomUser);
 
 
-
 switch ($choix) {
     case 1:
-        $result = rechLienParrain($login1, $login2, $nomBase, $nomUser, $mdp);
+        $result = rechLienParrain($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result[0] != 0) {
             print "<p>La recherche de parrain commun entre $prenom1 $nom1 et $prenom2 $nom2 a donné : <br/><br/></p>";
@@ -75,7 +76,7 @@ switch ($choix) {
     break;
 
     case 2:
-        $result = rechLienFilleul($login1, $login2, $nomBase, $nomUser, $mdp);
+        $result = rechLienFilleul($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result[0] != 0) {
             print "<p>La recherche de filleul commun entre $prenom1 $nom1 et $prenom2 $nom2 a donné : <br/><br/></p>";
@@ -119,7 +120,7 @@ switch ($choix) {
     break;
 
     case 3:
-        $result = rechLienFilleul($login1, $login2, $nomBase, $nomUser, $mdp);
+        $result = rechLienFilleul($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result[0] != 0) {
             print "<p>La recherche de filleul commun entre $prenom1 $nom1 et $prenom2 $nom2 a donné : <br/><br/></p>";
@@ -161,7 +162,7 @@ switch ($choix) {
             print "<p>Il n'y a aucun filleul commun entre $prenom1 $nom1 et $prenom2 $nom2.</p>";
         }
 
-        $result = rechLienParrain($login1, $login2, $nomBase, $nomUser, $mdp);
+        $result = rechLienParrain($login1, $login2, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result[0] != 0) {
             print "<p>La recherche de parrain commun entre $prenom1 $nom1 et $prenom2 $nom2 a donné : <br/><br/></p>";
@@ -206,7 +207,7 @@ switch ($choix) {
 }
 
 
-print "<p><a href='recherche_lien_de_parente.html'>Autre recherche</a></p>";
+print "<p><a href='form_recherche_lien_de_parente.php'>Autre recherche</a></p>";
 
 retourAuMenu();
 pied();
\ No newline at end of file
diff --git a/Code/resultat_personne.php b/Code/resultat_personne.php
index b272d84d39098c0c8b4260087fd9bd4c225b9594..aab312922288192f4e0bfe14046d4c5a1122b480 100644
--- a/Code/resultat_personne.php
+++ b/Code/resultat_personne.php
@@ -7,31 +7,34 @@
  */
 
 session_start();
-include_once("config_s.php");
+require_once ("config_s.php");
 include_once("mise_en_page.php");
 include_once ("profil_vision.php");
 
-$choix = $_GET['choix'];
 
-$login = $_GET['login'];
-$nom= $_GET['nom'];
-$prenom = $_GET['prenom'];
 
+/* Variables de session */
 $nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
 $admin = $_SESSION['admin'];
 $co = $_SESSION['co'];
 
+
+/* Variables issues du formulaire */
+$choix = $_GET['choix'];
+
+$login = $_GET['login'];
+$nom= $_GET['nom'];
+$prenom = $_GET['prenom'];
+
 enTete("Résultats", $nomUser);
 
 switch ($choix) {
     case 1:
-        $result = rechParrain($login, $nomBase, $nomUser, $mdp);
+        $result = rechParrain($login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result) {
 
-            print "<p>La recherche des parrain de $prenom $nom a donné : <br/><br/></p>";
+            print "<p>La recherche des parrains de $prenom $nom a donné : <br/><br/></p>";
 
             foreach ($result as $key => $value) {
                 if ($key == 0) print "<p>Il y a $value niveaux</p></br>";
@@ -59,7 +62,7 @@ switch ($choix) {
         break;
 
     case 2:
-        $result = rechFilleul($login, $nomBase, $nomUser, $mdp);
+        $result = rechFilleul($login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         if ($result) {
 
@@ -92,8 +95,8 @@ switch ($choix) {
 }
 
 
-
-print "<p><a href='recherche_personne.html'>Autre recherche</a></p>";
+print "<p><a href='form_recherche_personne.php'>Autre recherche</a></p>";
 
 retourAuMenu();
-pied();
\ No newline at end of file
+pied();
+?>
\ No newline at end of file
diff --git a/Code/validation_modif.php b/Code/validation_modif.php
index bc061c169cb64dd2df39d96fa8c0cc87e89165af..e8437e16d5f076279f375db4ff46853d40128c79 100644
--- a/Code/validation_modif.php
+++ b/Code/validation_modif.php
@@ -6,25 +6,16 @@
  */
 
 session_start();
-
-//ext $surnomN: nouveau surnom
-//ext $promoN: nouvelle promo
-//ext $ddnN : nouvelle date de naissance
-//ext $telN: nouveau telephone
-//ext $mailN: nouveau mail
-//ext $ecoleN: nouveau lieu d'école
-//ext $gpeN: nouveau groupe de TD/TP
-//ext $nomUser, $nomBase et $mdp :variables de session (nom de l'utilisateur, de la base et mot de passe)
-
+require_once ("config_s.php");
 include("mise_en_page.php");
 include("profil_vision.php");
 
-$co = $_SESSION['co'];
+/* Variables de session */
 $nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
-$admin=$_SESSION['admin'];
+$admin = $_SESSION['admin'];
+$co = $_SESSION['co'];
 
+/* Variables issues du formulaire */
 $login=$_GET['login'];
 $nomN=$_GET['nomN'];
 $prenomN=$_GET['prenomN'];
@@ -38,19 +29,11 @@ $gpeN=$_GET['gpeN'];
 
 enTete("Modifications apportées", $nomUser);
 
-list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult($login,$nomBase, $nomUser, $mdp);
-
-    // on fait chaque requête successivement en vérifiant qu'on ne rajoute pas un élément null
-    // avec verification que cela a fonctionne (test nombre de tuple modifie par postgreSql)
-    // si oui message de succes
-    // sinon message d'erreur
-
-    //$Requete = pg_query($DB, "begin");
-
+list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult($login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
     /* NOM */
     if ($nomN != NULL && $nomN != $nom && $admin) {
-        $modifNom = modifierEleve('nom_eleve', $nomN, $login, $nomBase, $nomUser, $mdp);
+        $modifNom = modifierEleve('nom_eleve', $nomN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         /*print "<p>Le nouveau nom doit être $nom";
         print "Valeur de modifSurn : $modifSurn</p>";*/
@@ -74,7 +57,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* PRENOM */
     if ($prenomN != NULL && $prenomN != $prenom && $admin) {
-        $modifPrenom = modifierEleve('prenom', $prenomN, $login, $nomBase, $nomUser, $mdp);
+        $modifPrenom = modifierEleve('prenom', $prenomN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         /*print "<p>Le nouveau nom doit être $nom";
         print "Valeur de modifSurn : $modifSurn</p>";*/
@@ -98,7 +81,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* SURNOM */
     if ($surnomN != $surnom) {
-        $modifSurn = modifierEleve('surnom', $surnomN, $login, $nomBase, $nomUser, $mdp);
+        $modifSurn = modifierEleve('surnom', $surnomN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
         /*print "<p>Le nouveau surnom doit être $surnom";
         print "Valeur de modifSurn : $modifSurn</p>";*/
@@ -119,7 +102,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* PROMO */
     if ($promoN != $promo) {
-        $modifPromo = modifierEleve('promo', $promoN, $login, $nomBase, $nomUser, $mdp);
+        $modifPromo = modifierEleve('promo', $promoN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>La nouvelle promo doit être $promo";
         print "Valeur de modifPromo : $modifPromo</p>";*/
 
@@ -139,7 +122,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* DATE DE NAISSANCE */
     if ($ddnN != $ddn) {
-        $modifDdn = modifierEleve('ddn', $ddnN, $login, $nomBase, $nomUser, $mdp);
+        $modifDdn = modifierEleve('ddn', $ddnN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>Le nouvelle ddn doit être $ddn";
         print "Valeur de modifDdn : $modifDdn</p>";*/
 
@@ -160,7 +143,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* TELEPHONE */
     if ($telN != $tel) {
-        $modifTel = modifierEleve('tel', $telN, $login, $nomBase, $nomUser, $mdp);
+        $modifTel = modifierEleve('tel', $telN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>Le nouveau tél doit être $tel";
         print "Valeur de modifTel : $modifTel</p>";*/
 
@@ -180,7 +163,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* MAIL */
     if ($mailN != $mail) {
-        $modifMail = modifierEleve('mail', $mailN, $login, $nomBase, $nomUser, $mdp);
+        $modifMail = modifierEleve('mail', $mailN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>Le nouveau mail doit être $mail";
         print "Valeur de modifMail : $modifMail</p>";*/
 
@@ -201,7 +184,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
 
     /* ECOLE */
     if ($ecoleN != $ecole) {
-        $modifEcole = modifierEleve('lieu', $ecoleN, $login, $nomBase, $nomUser, $mdp);
+        $modifEcole = modifierEleve('lieu', $ecoleN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>Le nouveau lieu doit être $ecole";
         print "Valeur de modifEcole : $modifEcole</p>";*/
 
@@ -224,7 +207,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
     /* GROUPE TD TP */
     if ($gpeN != $gpe) {
         if ($gpeN == 0) $gpeN = "";
-        $modifGpe = modifierEleve('gpe_td', $gpeN, $login, $nomBase, $nomUser, $mdp);
+        $modifGpe = modifierEleve('gpe_td', $gpeN, $login, $nomHost, $nomBase, $nomRoot, $mdpRoot);
         /*print "<p>Le nouveau gpe doit être $gpe";
         print "Valeur de modifGpe : $modifGpe</p>";*/
 
@@ -245,7 +228,7 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
     /* ASSOCIATIONS */
 
     /* Liste de toutes les associations dans la base */
-    $assoc = infoAssoc($nomBase, $nomUser, $mdp);
+    $assoc = infoAssoc($nomHost, $nomBase, $nomRoot, $mdpRoot);
 
     $ajoutAssoc = 0;
     $suppAssoc = 0;
@@ -253,11 +236,11 @@ list($nom,$prenom,$surnom,$promo,$ddn,$tel,$mail,$ecole,$gpe, $assocs) = consult
     foreach ($assoc as $key => $value) {
         /* Si la case a été cochée */
         if($_GET[$key] == 'ajout' && !in_array($value, $assocs)) { /* Si l'association n'a pas déjà été renseignée, et a été cochée */
-            modifierAssoc_eleve('ajout', $login, $key,  $nomBase, $nomUser, $mdp);
+            modifierAssoc_eleve('ajout', $login, $key, $nomHost, $nomBase, $nomRoot, $mdpRoot);
             $ajoutAssoc ++;
         }
         elseif ($_GET[$key] != 'ajout' && in_array($value, $assocs)) { /* Si l'association a déjà été renseignée, et a été décochée */
-            modifierAssoc_eleve(null, $login, $key,  $nomBase, $nomUser, $mdp);
+            modifierAssoc_eleve(null, $login, $key, $nomHost, $nomBase, $nomRoot, $mdpRoot);
             $suppAssoc ++;
         }
     }
diff --git a/Code/visualisation_profil.php b/Code/visualisation_profil.php
index e8e48cbd828b9725e3fc597412f1b385661b02fa..8aabd0001742f765fbd1972fd72e7f0f1491ad39 100644
--- a/Code/visualisation_profil.php
+++ b/Code/visualisation_profil.php
@@ -7,28 +7,37 @@
  */
 
 session_start();
+require_once ("config_s.php");
 include_once("mise_en_page.php");
 include_once("profil_vision.php");
 
-$co = $_SESSION['co'];
+/* Variables de session */
 $nomUser=$_SESSION['nomUser'];
-$nomBase=$_SESSION['nomBase'];
-$mdp=$_SESSION['mdp'];
 $admin = $_SESSION['admin'];
-
-$login = $nomUser;
+$co = $_SESSION['co'];
 
 
 enTete("Profil", $nomUser);
 
 
 /* On prend les variables Nom, Prenom, Surnom, Promo, date de naissance, tel, mail, lieu d'étude, gpe de TD, array d'assoc grace a consult */
-list($nom, $prenom, $surnom, $promo, $ddn, $tel, $mail, $ecole, $gpe, $assocs) = consult($login, $nomBase, $nomUser, $mdp);
+list($nom, $prenom, $surnom, $promo, $ddn, $tel, $mail, $ecole, $gpe, $assocs) = consult($nomUser, $nomHost, $nomBase, $nomRoot, $mdpRoot);
 
 /* Si le nom est -2, on n'a pas réussi à se connecter à la BD */
-if ($nom == -2) {
-    print "<p class = 'erreur'>Impossible de vérifier si le nom est valide, testez votre connexion internet.</p>";
-    pied();
+if ($nom == -3) {
+    print "<p class='erreur'>Erreur lors de la connexion à la base de données, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($nom == -2) {
+    print "<p class='erreur'>Erreur lors de la connexion à la table voulue, rafraîchir la page ou contacter l'administrateur</p>";
+}
+
+elseif ($nom == -1) { /* Si le login n'est pas bon */
+    print "<p class = 'erreur'>Compte supprimé. Contactez l'administrateur si c'est une erreur.<br/>Vous allez être déconnecté.</p>";
+    $_SESSION['co'] = False;
+    $_SESSION['nomUser'] = -1;
+    $_SESSION['mdp'] = "";
+    $_SESSION['admin'] = False;
 }
 
 print "<h4>Informations principales : </h4>\n";