Mysql : formulaire enregistrement utilisateur

Padoo Messages postés 109 Statut Membre -  
pascal_sql Messages postés 5 Statut Membre -
Bonjour,

Je suis en train de coder un site web en PHP avec une base MySQL derrière. J'ai terminé de coder le formulaire html d'enregistrement. C'est un formulaire classique avec nom password et email.

J'ai fait des controles en Javascript pour vérifier la longueur du nom d'utilisateur etc.

J'aimerais maintenant vérifier que un nouvel utilisateur ne pourra pas utiliser le pseudo de quelqu'un d'autre. J'aimerais faire ce contrôle lors de l'envoi des données, comme pour les contrôles javascript, et pas sur la page de réception des informations.

Est-ce possible?

Quelqu'un aurait il des exemples de code à me proposer, car les recherches que j'ai faites jusqu'à maintenant sur le web se sont révélées infructueuses.

Je vous remercie beaucoup.

--
Demain est un autre jour... Vivement demain !

3 réponses

  1. crabs Messages postés 909 Statut Membre 507
     
    Salut,
    La fonctionnalité HTTPrequest de Javascript devrait répondre à ta
    question : http://www.w3schools.com/dom/dom_http.asp
    Pour le principe :
    ta page HTML fait une requête via HTTPrequest dans un script JS du type en
    mode synchrone:
    http://mon.serveur.com/verif_pseudo_libre.php?pseudo='....'
    Ce script PHP retourne la chaine de caractère OK ou PRIS
    Il ne reste plus qu'a tester le résultat dans le JS de ta page HTML.

    Ne pas oublier que les internautes peuvent désactiver Javascript, donc il
    faut tout de même refaire les controles dans la page qui reçoit les infos.

    A+, crabs
    0
  2. attention
     
    mefie toi au maximun du java script pour faire des verifications !!!
    Si par exemple tu verifies que le pseudo existe en js, je prend ton code (formulaire + javascript) que je met sur ma machine, je vire le js et hop je peu m inscrire avec un pseudo qui existe ...
    Le js est bien pour faire des effet tout mignon mais est a prosdcrire pour valider des informations que tu vas stocker ou pour verifier des password car comme la source est accessible on peut la modifier
    0
  3. pascal_sql Messages postés 5 Statut Membre
     
    bonjour,
    le plus sérieux et efficace est de commencer par un clause UNIQUE sur une colonne de table qui doit être unique. Ensuite de gérer les erreurs SQL -comme il se doit- dans le code PHP.
    En ce qui concerne les contrôles de façon général il doivent être situés côté client (en javascript) et côté serveur(PHP) car effectivement, comme cela a été écrit le seul contrôle côté client est peu sûr d'un point de vue de la sécurité. Il faut donc doubler le code de contrôle (c'est le cas du contrôle de présence de valeur) . Il faut en mettre côté client pour éviter des trafics réseaux inutiles.
    Certains codes de contrôle ne peuvent être que côté serveur (c'est le cas du contrôle de doublon, jamais un script client
    ne pourra contrôler la présence d'une valeur dans une BD).
    P.
    0