Contrôle mail utilisateur
Bonjour ,
dans la version 5-8-4, j'ai un contrôle du mail utilisateur récalcitrant quand je crée un nouvel utilisateur , il refuse la création au motif "mail déjà existant" si je renseigne ou "adresse mail invalide" si je ne renseigne pas. Est-il possible de neutraliser ce contrôle?
José
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Bonjour,
Les contrôles de validité des emails pour les utilisateurs se font dans plxAdmin::editUsers()
Pour le "mail déjà exitant" tu peux neutraliser le test correspondant à la ligne 488 comme ceci :
Pour adresse mail invalide, pas sûr que cela soit une bonne idée, mais bon à la ligne 438:
Note que l'adresse mail permet à utilisateur de récupérer ou demander son mot de passe. Donc si pas de mail, on fait comment ?
J'ai apporté les modifications, il me retourne encore adresse mail invalide. Il n'y aurait pas un bug la dessous?
José
Effectivement. Il suffit de commenter le premier if :
L'E-mail n'est plus obligatoire
c'est pas encore ça: message mail invalide
est-ce normal que les deux if retournent le message d'erreur ? A quel moment le mail est enregistré?
j'ai neutralisé les deux conditions juste pendant le temps de créer un nouvel utilisateur, ( Dans le programme, le mail est enregistré quelques lignes plus bas. )
José
Je viens de faire le test.
En rajoutant seulement un "false and " en début du "if" des lignes 436 et 488, je n'ai pas de souci pour laisser un email vide ou en doublon.
Le mail a été rendu obligatoire pour réinitialiser le mot de passe. C'est une option dans "paramètres avancées".
As-tu un intérêt particulier pour ne pas saisir le mail ?
Tu vas devoir faire la modif à chaque mise à jour de PluXml.
Pour que cela fonctionne j'ai également ajouté "false and " à la ligne 438.
cela m'interesse d'avoir les mails mais j'avais un blocage intempestif "mail invalide" ou "mail déjà existant"
Merci
Ligne 438 : Cela veut dire que tu ne vérifies plus le format du mail ou que plxUtils::checkMail() fait mal le job avec ton mail (l'expression n'est peut-être pas correcte).
Le mieux serait d'utiliser var_filter dans plxUtils::checkmail() plutôt que de ré-inventer la roue" :
Regarde si ton mail passe dans le code ci-dessus.
1° j'ai supprimé "false and " à la ligne 438.( le deuxième if ). j'ai gardé ceux de ligne 436 et 488
2° j'ai modifié la fonction checkmail()
3° je teste avec et sans adresse mail : dans les deux cas j'ai " adresse e-mail invalide"
Tu peux m'envoyer en privé l'adresse mail qui plante ?
Je t'ai donné un exemple pour tester la fonction filter_var().
Pour remplacer la fonction plxUtils::checkmail(), c'est comme ceci :
J'ai hésité à te rappeler concernant le code de la fonction filter_var()..... sans commentaire
avec la nouvelle fonction plxUtils::checkmail(), cela ne fonctionne pas mieux. Que ce soit une adresse mail réelle ou une adresse bidon tonton@yahoo.fr
J'ai refait une installation complète de PluXml-5.8.4.
Aucun souci avec les versions originale et modifiée de plxUtils::checkmail().
tonton@yahoo.fr passe très bien.
Tu n'as pas un souci avec un plugin ?
Plugins désactivés : pas de changements.
Merci beaucoup .
je vais recharger plxUtils et plxAdmin , tester et je reviendrai sur le forum.