Créer un compte
Connexion

Problème d'inscription suite a l'ajout d'une table

Pour créer et répondre aux sujets, vous devez être connecté.
Pages: 1
Auteur Message
K4pr4l
01/10/2011 à 11:21:46
K4pr4l
Membre
Bonjour,

Voila j'ai créer mon site avec un espace membre, et j'ai créer un table access int(11) pour pouvoir créer un espace admin pour contrôler le site et ses membres. Mais voila j'ai refais l'inscription mais elle ne marche plus

<?php
//On verifie que le formulaire a ete envoye
if(isset($_POST['username'], $_POST['password'], $_POST['passverif'], $_POST['email'], $_POST['access']) and $_POST['username']!='')
{
        //On enleve lechappement si get_magic_quotes_gpc est active
        if(get_magic_quotes_gpc())
        {
                $_POST['username'] = stripslashes($_POST['username']);
                $_POST['password'] = stripslashes($_POST['password']);
                $_POST['passverif'] = stripslashes($_POST['passverif']);
                $_POST['email'] = stripslashes($_POST['email']);
                $_POST['access'] = stripslashes($_POST['access']);
        }
        //On verifie si le mot de passe et celui de la verification sont identiques
        if($_POST['password']==$_POST['passverif'])
        {
                //On verifie si le mot de passe a 6 caracteres ou plus
                if(strlen($_POST['password'])>=6)
                {
                        //On verifie si lemail est valide
                        if(preg_match('#^(([a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+\.?)*[a-z0-9!\#$%&\\\'*+/=?^_`{|}~-]+)@(([a-z0-9-_]+\.?)*[a-z0-9-_]+)\.[a-z]{2,}$#i',$_POST['email']))
                        {
                                //On echape les variables pour pouvoir les mettre dans une requette SQL
                                $username = mysql_real_escape_string($_POST['username']);
                                $password = mysql_real_escape_string($_POST['password']);
                                $email = mysql_real_escape_string($_POST['email']);
                                $access = mysql_real_escape_string($_POST['access']);
                       
                                //On verifie sil ny a pas deja un utilisateur inscrit avec le pseudo choisis
                                $dn = mysql_num_rows(mysql_query('select id from users where username="'.$username.'"'));
                                if($dn==0)
                                {
                                        //On recupere le nombre dutilisateurs pour donner un identifiant a lutilisateur actuel
                                        $dn2 = mysql_num_rows(mysql_query('select id from users'));
                                        $id = $dn2+1;
                                        //On enregistre les informations dans la base de donnee
                                        if(mysql_query('insert into users(id, username, password, email, avatar, signup_date) values ('.$id.', "'.$username.'", "'.$password.'", "'.$email.'", "'.$access.'", "'.time().'")'))
                                        {
                                                //Si ca a fonctionne, on naffiche pas le formulaire
                                                $form = false;
?>
<div class="message">Vous avez bien &eacute;t&eacute; inscrit. Vous pouvez dor&eacute;navant vous connecter.<br />
<a href="connexion.php">Se connecter</a></div>
<?php
                                        }
                                        else
                                        {
                                                //Sinon on dit quil y a eu une erreur
                                                $form = true;
                                                $message = 'Une erreur est survenue lors de l\'inscription.';
                                        }
                                }
                                else
                                {
                                        //Sinon, on dit que le pseudo voulu est deja pris
                                        $form = true;
                                        $message = 'Un autre utilisateur utilise d&eacute;j&agrave; le nom d\'utilisateur que vous d&eacute;sirez utiliser.';
                                }
                        }
                        else
                        {
                                //Sinon, on dit que lemail nest pas valide
                                $form = true;
                                $message = 'L\'email que vous avez entr&eacute; n\'est pas valide.';
                        }
                }
                else
                {
                        //Sinon, on dit que le mot de passe nest pas assez long
                        $form = true;
                        $message = 'Le mot de passe que vous avez entr&eacute; contien moins de 6 caract&egrave;res.';
                }
        }
        else
        {
                //Sinon, on dit que les mots de passes ne sont pas identiques
                $form = true;
                $message = 'Les mots de passe que vous avez entr&eacute; ne sont pas identiques.';
        }
}
else
{
        $form = true;
}
if($form)
{
        //On affiche un message sil y a lieu
        if(isset($message))
        {
                echo '<div class="message">'.$message.'</div>';
        }
        //On affiche le formulaire
?>
<div class="content">
    <form action="sign_up.php" method="post">
        Veuillez remplir ce formulaire pour vous inscrire:<br />
        <div class="center">
            <label for="username">Nom d'utilisateur</label><input type="text" name="username" value="<?php if(isset($_POST['username'])){echo htmlentities($_POST['username'], ENT_QUOTES, 'UTF-8');} ?>" /><br />
           
                        <label for="password">Mot de passe<span class="small">(6 caract&egrave;res min.)</span></label><input type="password" name="password" /><br />
            <label for="passverif">Mot de passe<span class="small">(v&eacute;rification)</span></label><input type="password" name="passverif" /><br />
            <label for="email">Email</label><input type="text" name="email" value="<?php if(isset($_POST['email'])){echo htmlentities($_POST['email'], ENT_QUOTES, 'UTF-8');} ?>" /><br />

            <input type="submit" value="Envoyer" />
                </div>
    </form>
</div>
<?php
}
?>

Merci d'avance ;)

Aglzime
05/10/2011 à 18:30:36
Celui qui sacrifie sa liberté pour sa sécurité, ne mérite aucune des deux ! Aglzime
Membre
ta oublié include('config.php'); dans ton code non?

luc904
08/11/2011 à 18:11:47
luc904
Membre
non il a pas mit tous le code ^^

Moi pour un espace admin j'ai mis au dessu du doctype :

          if(isset($_SESSION['username']) and $_SESSION['username']==$admin)
{

et plus bas en bas de ton champ de texte :

<?php
}
else
{
        echo '<h2>Vous devez être connecté en tant qu\'administrateur pour accéder à cette page: <a href="connexion.php">Connexion</a> - <a href="signup.php">Inscription</a></h2>';
}
?>

et au dessus du deuxième code, j'ai mit toutes la parti admin et dans ton config.php, tu met :

$admin='tonpseudo';
et sa devrait marcher

Image
Pages: 1