begin process at 2012 05 28 21:47:45
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive PHP

 > 

Archives

 > 

AU SECOURS !!!

 > 

Formulaire d'inscription de membre auteur Krozone


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Formulaire d'inscription de membre auteur Krozone

mardi 29 novembre 2005 à 19:04:50 | Formulaire d'inscription de membre auteur Krozone

DCO2

Membre Club
Bonjour,

J'ai téléchargé et mis sur mon site le formulaire d'inscription de Krozone.

L'installation s'est bien déroulée. mais j'ai le probléme suivant::

Lorsque j'ouvre la page sécurisée, il faut que je mette mon login et mot de passe ou bien que je m'inscrive jusque là OK, je m'inscrit OK, je recois l'email de confirmation OK.
Mais lorsque je clique sur le lien de confirmation ce message apparait:
Ce code n'existe pas, est expiré ou à déjà été validé, veuillez remplir à nouveau le formulaire : ICI.
Et la table "users" de la bd est vide.

D'où vient le problème.
Merci pour votre aide.
mardi 29 novembre 2005 à 19:12:14 | Re : Formulaire d'inscription de membre auteur Krozone

Mizuka

Membre Club
Bonsoir,

Alors déjà que la table 'users' qoit vide, je pense que ça peut s'expliquer par le fait que l'enregistrement se fait après la confirmation, or si elle marche pas pas d'enregistrement.

Par contre pourquoi ça marche pas. Je sais pas :(

Mizuka

mardi 29 novembre 2005 à 19:15:09 | Re : Formulaire d'inscription de membre auteur Krozone

Anthomicro

Salut,

sans code et sans structure de table on va avoir du mal à t'aider...


    mardi 29 novembre 2005 à 21:13:03 | Re : Formulaire d'inscription de membre auteur Krozone

    DCO2

    Membre Club

    Re bonjour et merci pour vos réponse.

    Pour répondre à Misuka effectivement l'enregistrement se fait à la validation par le mail.

    la table est structureé comme ceci:
    <?
    require "../connect.inc";
    $query ="CREATE TABLE `users` (
      `userid` varchar(20) NOT NULL default '',
      `prenom` varchar(20) NOT NULL default '',
      `n_adherent` varchar(20) NOT NULL default '',
      `adresse` varchar(20) NOT NULL default '',
      `ville` varchar(20) NOT NULL default '',
      `cp` varchar(20) NOT NULL default '',
      `fixe` varchar(20) NOT NULL default '',
      `portable` varchar(20) NOT NULL default '',
      `password` varchar(20) NOT NULL default '',
      `uniqueid` varchar(100) NOT NULL default '',
      `level` varchar(20) NOT NULL default '',
      `email` varchar(100) NOT NULL default '',
      `heure` int(100) NOT NULL default '0',
      `IP` varchar(15) NOT NULL default '',
      PRIMARY KEY  (`userid`)
    ) TYPE=MyISAM;";

    mysql_query($query);
     
    ?>

    et le formulaire de validation:
    <html>
    <head>
    <title>Enregistrement</title>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
    <link rel="stylesheet" type="text/css" href="identification.css" />

    </head>
    <body>
    <div id="identification">
    <?php
    require "inscription.php";
    if (isset($_POST["email"]))
    {
      // Verification et envoi du mail de confirmation
      inscription();
    }
    else if(isset($_GET["code"]))
    {
      // Verification du code et blacklistage si besoin
      code_check($_GET["code"],$_GET["BL"]);
    }
    else
    {
      // Formaulaire d'enregistrement
      show_form();
    }
    ?>
    </div>
    </body>
    </html>

    avec le formulaire d'incription:
    //------------------------------------------------------
    // Fonction Inscription
    // - Attribution d'une id unique
    // - Tous les champs doivent être remplis
    // - Les deux champs passwords doivent être identiques
    // - Les champs ne doivent pas contenir d'apostrophe
    // - Le login ne doit pas déjà exister
    // - Le mail ne doit pas être dans la blackliste
    // - Envoi d'un mail avec une adresse de confirmation
    //------------------------------------------------------
    function inscription()
    {
    require "connect.inc";
    $page=$serveur.$_SERVER["PHP_SELF"];
    $nom=$_POST["nom"];
    $prenom=$_POST["prenom"];
    $n_adherent=$_POST["n_adherent"];
    $adresse=$_POST["adresse"];
    $ville=$_POST["ville"];
    $cp=$_POST["cp"];
    $fixe=$_POST["fixe"];
    $portable=$_POST["portable"];
    $pass=$_POST["pass"];
    $pass2=$_POST["pass2"];
    $email=$_POST["email"];
    $IP=$_SERVER['REMOTE_ADDR'];
    $heure=time();

    // Attendre qu'il n'y ait pas d'autres user avec le même numéro de session.
    do
    {
    $uniqueid=md5(time());
    $resultat = mysql_query("SELECT * FROM boutique_users WHERE uniqueid='$uniqueid'");
    }
    while(false!=($ligne = mysql_fetch_array($resultat)));

    // Vérification diverses et variées.
    if($nom=="" || $prenom=="" || $n_adherent=="" || $adresse=="" || $ville=="" || $cp=="" || $fixe=="" || $portable=="" || $pass=="" || $pass2=="" || $email==""){show_form($nom,$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,$pass,$pass2,$email,'Certains champs ne sont pas remplis !');die();} // Tous les champs doivent être remplis
    if($pass!=$pass2){show_form($nom,$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,$pass,$pass2,$email,'Le mot de passe et la confirmation sont différents.');die();} // Le mot de passe et la confirmation doivent être identiques
    if(!(!strrpos($_POST["nom"], "'") && !strrpos($_POST["pass"], "'") && !strrpos($_POST["email"], "'"))){show_form($nom,$pass,$pass2,$email,'Ne pas utiliser de caractères spéciaux');die();} // Eviter les failles SQL
    $resultat = mysql_query("SELECT * FROM boutique_users WHERE userid='$nom'");
    if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,$pass,$pass2,$email,"Le membre (".$nom.") existe déjà");die();}  // Si le login est déjà pris
    $resultat = mysql_query("SELECT * FROM boutique_users WHERE email='$email' AND level='blacklist'");
    if(false!=($ligne = mysql_fetch_array ($resultat))){show_form($nom,$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,$pass,$pass2,$email,"L'adresse e-mail (".$email.") est blacklistée. Utilisez une autre adresse mail.");die();}   // Si l'e-mail est dans la blacklist

    $subject  = "Veuillez confirmer votre inscription";
    $headers  = "From: ne_pas_repondre@adgcp-63.com\n";
    $message  = "Veuillez confirmer votre inscription\n";
    $message .= "Bonjour ".$nom."\n\n";
    $message .= "Vous avez reçu ce mail parce que vous ou quelqu'un d'autre utilisant votre adresse mail s'est enregistré sur le site ".$site_name.".\n";
    $message .= "Pour valider cet inscription, cliquez sur ce lien :\n ".$page."?code=".$uniqueid."&BL=0 \n";
    $message .= "Si vous vous n'êtes pas inscrit sur ".$site_name.", veuillez ignorer ce message et accepter nos excuses.\n";
    $message .= "Vous pouvez aussi choisir d'ajouter votre mail à notre blacklist pour ne plus recevoir de mail d'inscription de notre part en cliquant sur ce lien :\n ".$page."?code=".$uniqueid."&BL=1 \n";
    $message .= "Votre e-mail a été envoyé de l'IP ".$IP.".\n\n";
    $message .= "Cordialement,\n";
    $message .= "Le Webmaster";

    // Envoi du mail
    if(@mail($email, $subject, $message, $headers))
        {
        $query = "INSERT INTO boutique_users VALUES ('$nom',$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,'$pass','$uniqueid','en_attente','$email','$heure','$IP')"; // On ajoute le membre à la liste avec le status en attente
        mysql_query($query);
        mysql_close();

        $page_confirmation  = "<p>Merci !</p><p>Vous devriez recevoir un e-mail à l'adresse suivante : ".$email.".</p>";
        $page_confirmation .= "<p>Veuillez confirmer l'inscription en cliquant sur le lien se trouvant sur le mail.</p>";
        echo $page_confirmation;
        }
    else
    {
         show_form($nom,$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,$pass,$pass2,$email,"Le mail de confirmation n'a pu être envoyé. Peut-être que l'adresse n'est pas valide. Veuillez contacter le webmaster s'il vous plait.");
    }
    }

    //------------------------------------------------------
    // Fonction Formulaire
    // - Retourne le formulaire avec les messages d'erreurs
    //------------------------------------------------------
    function show_form($nom="",$pass="",$pass2="",$email="",$error="")
    {
    $page_inscription  = "<form action=\"".$_SERVER["PHP_SELF"]."\" method=\"post\">";
    $page_inscription .= "<p>Merci de remplir le formulaire ci-dessous :</p>";
    $page_inscription .= "<p>Nom :</p><p><input type=\"text\" name=\"nom\" size=\"20\" maxlength=\"20\" value=\"".$nom."\" /></p>";
    $page_inscription .= "<p>Prénom :</p><p><input type=\"text\" name=\"prenom\" size=\"20\" maxlength=\"20\" value=\"".$prenom."\" /></p>";
    $page_inscription .= "<p>N° Adhérent :</p><p><input type=\"text\" name=\"n_adherent\" size=\"20\" maxlength=\"20\" value=\"".$n_adherent."\" /></p>";
    $page_inscription .= "<p>Adresse :</p><p><input type=\"text\" name=\"adresse\" size=\"20\" maxlength=\"20\" value=\"".$adresse."\" /></p>";
    $page_inscription .= "<p>Ville :</p><p><input type=\"text\" name=\"ville\" size=\"20\" maxlength=\"20\" value=\"".$ville."\" /></p>";
    $page_inscription .= "<p>Code Postal :</p><p><input type=\"text\" name=\"cp\" size=\"20\" maxlength=\"20\" value=\"".$cp."\" /></p>";
    $page_inscription .= "<p>Téléphone Fixe :</p><p><input type=\"text\" name=\"fixe\" size=\"20\" maxlength=\"20\" value=\"".$fixe."\" /></p>";
    $page_inscription .= "<p>Téléphone Portable :</p><p><input type=\"text\" name=\"portable\" size=\"20\" maxlength=\"20\" value=\"".$portable."\" /></p>";
    $page_inscription .= "<p>Mot de passe :</p><p><input type=\"password\" name=\"pass\" size=\"20\" maxlength=\"20\" value=\"".$pass."\" /></p>";
    $page_inscription .= "<p>Confirmation du mot de passe :</td><td><input type=\"password\" name=\"pass2\" size=\"20\" maxlength=\"20\" value=\"".$pass2."\" /></p>";
    $page_inscription .= "<p>E-mail :</p><p><input type=\"text\" name=\"email\" size=\"20\" maxlength=\"100\" value=\"".$email."\" /></p>";
    $page_inscription .= "<p><input type=\"submit\" value=\"S'inscrire\" /></p>";
    $page_inscription .= "<p style=\"color:#ff0000;font-weight:bold;\">".$error."</p>";
    $page_inscription .= "</form>";
    echo $page_inscription;
    }

    //-------------------------------------------------------------------------------
    // Fonction de vérification de l'adresse de confirmation
    // - Suppression des utilisateurs n'ayant pas confirmer avant la durée impartie
    // - Extraction de la personne concernée
    // - Validation de son enregistrement
    // - Si l'on veut être blacklisté, après confirmation on effectue le blacklistage
    // - Le webmaster recoit un mail lorsque l'inscription est validé
    //-------------------------------------------------------------------------------
    function code_check($code="",$BL="")
    {
    require "connect.inc";


    $heure=time();

    // On profite de l'occasion pour supprimer les users n'ayant pas confirmé dans la durée impartie
    $heure2=$heure-$validite;
    mysql_query("DELETE FROM boutique_users WHERE heure<$heure2 AND level='en_attente'");

    // On extrait la personne qui souhaite valider son inscription
    $uniqueid=$code;
    $resultat = mysql_query("SELECT * FROM boutique_users WHERE uniqueid ='$uniqueid' AND level='en_attente'");
    if(false==($ligne = mysql_fetch_array ($resultat)))
    {
    mysql_close();
    $page_validation = "Ce code n'existe pas, est expiré ou à déjà été validé, veuillez remplir à nouveau le formulaire : <a href=\"".$_SERVER["PHP_SELF"]."\">ICI</a>.";
    }
    else
    {
      // Si l'utilisateur vient pour confirmer, on passe son level de "en_attente" à "registered"
      if($BL==0)
      {
          mysql_query("UPDATE boutique_users SET level='registered' WHERE uniqueid ='$uniqueid' AND level='en_attente'");
          $page_validation = "Merci, vous êtes maintenant enregistré ! Vous pouvez maintenant vous connectez librement <a href=\"../".$page_redirection."\">ICI</a>.";
          if ($mail_controle==1)
          {
           $subject="Nouvelle inscription sur $site_name";
           $message="Bonjour,\n\n";
           $message.="Un nouveau membre vient de s'inscrire :\n";
           $message.="Nom : ".$ligne["userid"]."\n";
           $message.="E-Mail : ".$ligne["email"]."\n";
           $headers="From: ne_pas_repondre@adgcp-63.com\n";
           @mail($adresse_webmaster, $subject, $message, $headers);
          }
      }
      // Si l'utilisateur vient pour être blacklisté, on passe son level de "en_attente" à "blacklist"
      // Mais avant une petite confirmation
      if($BL==1)
      {
          $page_validation = "Vous souhaitez ajouter votre adresse mail à notre blackliste. Cliquez <a href=\"".$_SERVER["PHP_SELF"]."?code=".$code."&BL=2\">ici</a> pour que vous puissiez confirmer.";
      }
      // Si l'utilisateur a confirmé qu'il veut être dans la liste noire, on l'y met
      if($BL==2)
      {
          mysql_query("UPDATE boutique_users SET level='blacklist' WHERE uniqueid ='$uniqueid' AND level='en_attente'");
          $page_validation = 'Votre e-mail a été blacklisté. Vous ne receverez plus aucun e-mail de notre part.';
      }
      mysql_close();
    }
    echo "<p>".$page_validation."</p>";
    }


    Exusez si le code est long et merci pour votre aide.

    mardi 29 novembre 2005 à 21:30:42 | Re : Formulaire d'inscription de membre auteur Krozone

    Anthomicro

    pfiou..... que c'est long. Tu peux nous le condenser un peu stp ? merci


      mercredi 30 novembre 2005 à 11:04:24 | Re : Formulaire d'inscription de membre auteur Krozone

      DCO2

      Membre Club
      Condensé ce code n'est pas facile car tout se tient. Si j'en enlève un bout cela ne voudra rien dire.

      Et c'est bien à la vallidation que cela ne marche pas et je ne trouve pas ou est l'erreur.

      Merci de votre aide et de votre patience.
      mercredi 30 novembre 2005 à 15:43:37 | Re : Formulaire d'inscription de membre auteur Krozone

      Anthomicro

      Réponse acceptée !
      $query = "INSERT INTO boutique_users VALUES ('$nom',$prenom,$n_adherent,$adresse,$ville,$cp,$fixe,$portable,'$pass','$uniqueid','en_attente','$email','$heure','$IP')";

      la ville est une chaîne non ? de même que le prenom et l'adresse donc essaie ça :

      $query = "INSERT INTO boutique_users VALUES ('$nom','$prenom',$n_adherent,'$adresse',$ville,$cp,$fixe,$portable,'$pass','$uniqueid','en_attente','$email','$heure','$IP')";


        mercredi 30 novembre 2005 à 18:11:31 | Re : Formulaire d'inscription de membre auteur Krozone

        Mizuka

        Membre Club
        En même temps, pour toutes les variables mets des '. C'est plus sûr.
        Par contre le script est pas structuré y a des gros tas, donc la flemme de décortiquer ^^

        mercredi 30 novembre 2005 à 19:07:43 | Re : Formulaire d'inscription de membre auteur Krozone

        Anthomicro

        c'est plus sûr mais pas indispensable si t'as des types numériques, m'enfin ouais de toute façon je pense pas que ça ralentisse quoi que çe soit ;-)


          mercredi 30 novembre 2005 à 22:08:51 | Re : Formulaire d'inscription de membre auteur Krozone

          DCO2

          Membre Club
          Bonjour à tous,

          La solution a été donné par Anthomicro Effectivement j'avais ouoblié de mettre les quotes au bon endroi maintenant ça marche. Je vous en remercie beaucoup.

          1 2

          Cette discussion est classée dans : formulaire, ok, inscription, membre, krozone


          Répondre à ce message

          Sujets en rapport avec ce message

          coupler un formulaire à AlloPass [ par jipe32 ] Bonjour,Je voulais savoir si on pouvait coupler le système AlloPass à un formulaire PHP.Je m'explique: j'ai un formulaire d'inscription à mon site mai zone membre [ par montana75013 ] bonjour a tous ,desole je suis debutant en php j'ais quelque question pour vous.en faite j'ai cree un site http://pap.underground.free.fr/</f prob d'inscription pour un espace membre [ par bricethenetman ] Slt j''avé créer un petit script trés basic pour inscrir les membres de mon site(Insert into... ) à présent je l'ai modifier pour ke si un pseudo exi formulaire d'inscription nickserv pour irc [ par sylveur ] bonjour j'ai déja poser cette question mai sens vin.   je voudrai tout simple un code pour utiliser un formulaire d'inscription, qui enregistrera un p formulaire d'inscription sans socket [ par lilscratty ] bonjour jaurai aimer savoir comment réaliser un script php pour faire des inscriptions ircje ne possède pas ircg sur mon php mais les pear NET_IRC et Espace membre [ par HagRapMan ] Salut,Je voudrais faire un espèce d'espace membre qui permettrait au membre une fois inscrit d'accéder à une page personelle contenant un formulaire q formulaire d'inscription [ par stomy95 ] bonjour, je voudrais s'avoire comment faut faire pour creer et inserer un script pour mon site je voudrais y ajouter un formulaire d'inscription et je comment modifier un formulaire d'inscription [ par Vigasse ] jkklm a propos formulaire d'inscription avec le code [ par crestmen ] bjj'ai trouvé une difuclté dans le creation d'un formulaire avec un code de securité.j'ai suivi la methode que vous presenté mais ca nemarche pas.est- formulaire - Espace Membre [ par doclyv ] Hello!Pouvez-vous me dire comment faire pour que le client complète mon formulaire d'inscription ou authentifié s'il était déjà inscrit, et tout de su


          Nos sponsors


          Sondage...

          Comparez les prix

          CalendriCode

          Mai 2012
          LMMJVSD
           123456
          78910111213
          14151617181920
          21222324252627
          28293031   

          Consulter la suite du CalendriCode

          A découvrir



           
          Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
          CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
          CodeS-SourceS.com© est une marque déposée tous droits réservés

          Google Coop CodeS-SourceS Google Coop CodeS-SourceS
          Temps d'éxécution de la page : 0,530 sec (4)

          Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales