Inscription pour un site

Résolu/Fermé
Sara426 Messages postés 671 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 - 15 avril 2012 à 13:07
Sara426 Messages postés 671 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 - 15 avril 2012 à 16:13
Bonjour,

Je suis en train de faire un site internet en faisant tout moi-même.
J'ai fait mes pages et tout mon texte sans problème.

Maintenant j'aimerais mettre un système de gestion d'utilisateur.
J'ai télécharger Wamp pour la base de données et je connais déjà Mysql (on en a fait l'année dernière).
J'ai également fait mon formulaire d'inscription sur ma page.
Ce qu'il me manque maintenant c'est juste entre-deux.

Je vous explique ce que j'aimerais faire :
Le gars remplit le formulaire d'inscription (avec pseudo, mot de passe, la confirmation, l'adresse mail et la confirmation)
J'aimerais vérifier que le pseudo n'est pas déjà utilisé et que les confirmations sont correctes.
Pour ça j'ai préféré passé par le php plutôt que le javascript.

J'aimerais que si l'une des vérifications est fausse, l'ordinateur écrit sur la page un message d'erreur (genre "Vous avez mal entrer votre mot de passe") et redonner le formulaire qu'il vient de remplir (si possible avec la case qui n'est pas bonne en rouge mais ça c'est un détail)
Ou alors si tout est bon, qu'il affiche "L'inscription est valide" et qu'il le rentre dans la base de données (le INSERT je gère)

Est-ce que quelqu'un pourrait juste m'expliquer comment faire SVP ?
Je ne veux pas le code en entier mais juste une petite explication du contenu de chaque fichier, après je pourrais me débrouiller toute seule.

Cordialement,
Sara.


A voir également:

3 réponses

avion-f16 Messages postés 19244 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 17 avril 2024 4 496
15 avril 2012 à 13:31
Salut,

Je te recommande d'utiliser une variable de type Array contenant la liste des messages d'erreur. Cette variable doit être initialisée au début du script.

Ensuite tu fais les vérifications pour chaque champ, et si il y a une erreur, tu ajoutes le message d'erreur dans la variable.
Sinon, tu fais rien.

À la fin, tu comptes le nombre de messages dans ta variable.
S'il y en a 1 ou plus, tu affiches les messages, sinon, tu enregistres le membre et tu affiches un message de succès.

Voilà un exemple raccourci :
<?php
$erreurs = Array();


if(isset($_POST['username'], $_POST['password'], $_POST['password_confirm'], $_POST['mail'])) {
    
    // Longueur du pseudo
    if(strlen($_POST['username']) <= 4) {
        $erreurs[] .= "Le nom d'utilisateur doit comporter plus de 4 caractères (5 ou +)";
    }

    // Autres vérifications ....


    if(count($erreurs) > 0) {
        echo '<div class="error">Erreurs :<ul>';
        foreach($erreurs as $erreur) {
            echo '<li>'.$erreur.'</li>';
        }
        echo '</ul></div>';
    } else {
        // Enregistrer le membre + affiché un message "OK"
    }

} else {
    // Formulaire non envoyé, on l'inclue
    include 'formulaire.php';
}

0
Sara426 Messages postés 671 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 63
15 avril 2012 à 13:47
J'avais fait un truc du genre mais quand je refais le include comme toi le formulaire est vide.

Est-ce qu'il y aurait un moyen pour qu'il garde les infos qu'il vient d'envoyer ?
0
avion-f16 Messages postés 19244 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 17 avril 2024 4 496
15 avril 2012 à 15:24
Tu peux utiliser l'attribut "value" pour les input.
Et faire un "echo" en PHP de la variable correspondant.
0
Sara426 Messages postés 671 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 63
15 avril 2012 à 15:44
Est-ce que value sera envoyer comme un texte quand j'enverrais le formulaire ?
0
Sara426 Messages postés 671 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 16 décembre 2015 63
15 avril 2012 à 16:13
Parfait. J'ai essayer et ça marche super.

Merci beaucoup.
0