Problème avec une adresse mail

Fermé
clend Messages postés 21 Date d'inscription jeudi 2 février 2017 Statut Membre Dernière intervention 1 avril 2020 - 5 juil. 2019 à 17:11
clend Messages postés 21 Date d'inscription jeudi 2 février 2017 Statut Membre Dernière intervention 1 avril 2020 - 6 juil. 2019 à 03:55
Bonjour,

Pour restreindre l'accès à un site par les seuls employés d'une entreprise, je mémorise préalablement dans une table spécifique des Autorisations toutes les adresses email de ces employés fournies par l'employeur. Avec l'obligation pour tout utilisateur patenté de s'enregistrer sur le site avec ladite adresse email personnelle.
Après connexion de tout utilisateur, je vérifie que son adresse email contenue dans la table Users de ma BDD est bien référencée dans ma table spécifique des autorisations ... sinon, je le bloque.

Et là, je bute sur un problème: le test d'égalité me retourne TOUJOURS "false", que l'adresse email de la table users soit présente ou non dans la table autorisations!
nb: le type de donnée est strictement identique pour les 2 tables: varchar ().

Ne faut-il pas utiliser une routine particulière en présence d'adresses email ?

Merci d'avance pour vos conseils éclairés.
A voir également:

2 réponses

NHenry Messages postés 15164 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 27 novembre 2024 345
5 juil. 2019 à 18:18
Quel est ton code ?
Sans cela impossible de t'aider.
0
clend Messages postés 21 Date d'inscription jeudi 2 février 2017 Statut Membre Dernière intervention 1 avril 2020
6 juil. 2019 à 03:55
Bonjour NHenry,

Et grand merci pour ta proposition d'aide.
Voici donc ici le bloc du test d'autorisation ou non et que j'explicite au-dessous du code php & mysqli :


$req = "SELECT id_societe, adresse_mail FROM syw7g_autorisations WHERE ((id_societe = '".$num_societe."') AND (adresse_mail = '".$user_email."'))";
$resultat = $conn->query($req);
$nn = $resultat->num_rows;
if ($nn == 0) {
echo "<div class='encadre-rouge'>Vous n'êtes pas habilité(e) par votre Employeur .à utiliser ce site (etc...) </div>";
}else{
// poursuite du traitement (utilisateur autorisé)
... suite du code

}


Au tout début de ce script, je :
- me connecte à ma BDD ($conn = mysqli_connect(' ... '),
- récupère dans la table des utilisateurs, et après avoir vérifié que l'utilisateur est bien connecté, son adresse mail (cf. $user_email) fournie lors de son inscription sur le site ainsi que le n° de société Employeur (cf. $num_societe),
- la table des Autorisations est très simple, 2 colonnes "id_societe" (type int) & adresse_mail (type varchar) initialement fournie par l'employeur. Avec une ligne par employé autorisé par l'employeur.

À l'utilisation, le test est négatif quelque soit l'utilisateur (présent ou non dans la table des Autorisations) !
0