Accueil > > > VALIDATION D'UN COMPTE PAR MAIL AVEC URL...
VALIDATION D'UN COMPTE PAR MAIL AVEC URL...
Information sur la source
Description
Ce script valide un compte membre par mail avec URL integrée. Il faut: - 2 pages, une pour l'inscription (avec votre formulaire html biensur) et une pour la verification. - 2 tables, une pour le compte provisoir et une pour les comptes validés (definitif) -La page d' inscription envoie les données du formulaire et une clé aleatoire dans la table compte_provisoir. -La page de verification compare la clé et l id, si elles sont identiques les données de la table compte_provisoir seront effacées et deplacées dans la table compte_definitif Heu je suis debutant et c est mon tout premier script que je post ici
Source
- //------------------------------
- // PAGE D INSCRIPTION
- //------------------------------
-
- //creation d une variable qui genere une clé a 10 chiffres
- $numero = "0123456789";
- $clef = str_shuffle($numero);
-
- //envoi des données dans la table compte_provisoir avec la clé
- if (sizeof($_POST))
- {
- if (isset($_POST['pseudo']) and isset($_POST['password']) and isset ($_POST['mail']))
- {
-
- $pseudo = $_POST['pseudo'];
- $password = $_POST['password'];
- $mail = $_POST['mail'];
-
- mysql_connect("localhost", "root", "");
- mysql_select_db("test");
- mysql_query("INSERT INTO compte_provisoir VALUES('', '$clef', '$pseudo', '$password', '$mail')")or die(mysql_error());
- $reponse_id = mysql_query("SELECT id FROM compte_provisoir WHERE pseudo = '$pseudo'")or die(mysql_error());
- mysql_close();
-
- echo "tu vas recevoir un mail";
-
- //le mail est envoyé, l'url contient la clé et l'id pour la comparaison (page verification)
- while ($donnees = mysql_fetch_array($reponse_id))
- {
- $id = $donnees['id'] ;
- $mail_destinataire = $_POST['mail'];
- $sujet = " validation de l'inscription";
- $message = "Ton mot de passe est: $password \n Ton pseudo est: $pseudo \n \n Pour valider ton inscription clique sur le lien suivant: \n http://127.0.0.1:81/Php/zone_membre_validation.php?id=$id&clef=$clef";
- $head = "Salut $pseudo ";
- mail($mail_destinataire, $sujet, $message, $head);
- }
- }
-
- //-----------------------------
- // PAGE VERIFICATION (http://127.0.0.1:81/Php/zone_membre_validation.php?id=$id&clef=$clef)
- //-----------------------------
-
- //ici on recupere la clé et l id de l'url
- if (isset($_GET['id']) and isset($_GET['clef']))
- {
- $recherche_id= $_GET['id'];
- $recherche_clef = $_GET['clef'];
-
- //on recupere les données de la table compte_provisoir
- mysql_connect("localhost", "root", "");
- mysql_select_db("test");
- $reponse_comparaison = mysql_query("SELECT id, clef FROM compte_provisoir WHERE id = '$recherche_id'")or die(mysql_error());
- $reponse_provisoir = mysql_query("SELECT clef, pseudo, password, mail FROM compte_provisoir WHERE id = '$recherche_id'")or die(mysql_error());
- mysql_close();
-
- while ($donnees_provisoir = mysql_fetch_array($reponse_provisoir))
- {
- $clef = $donnees_provisoir['clef'];
- $pseudo = $donnees_provisoir['pseudo'];
- $password = $donnees_provisoir['password'];
- $mail = $donnees_provisoir['mail'];
- }
-
-
- while ($donnees_comparaison = mysql_fetch_array($reponse_comparaison))
- {
- //ici le plus important on compare la clé de la table compte_provisoir a celle de l'url, idem pour l'id, si elles sont identiques alors on en fait une requette pour balancer les données dans le compte_definitif et on supprime celles du compte provisoir
- if ($donnees_comparaison['clef'] == $recherche_clef and $donnees_comparaison['id'] == $recherche_id)
- { echo "compte validé"};
- mysql_connect("localhost", "root", "");
- mysql_select_db("test");
- mysql_query("INSERT INTO compte_definitif VALUES('', '$clef', '$pseudo', '$password', '$mail')")or die(mysql_error());
- mysql_query("DELETE FROM compte_provisoir WHERE clef = '$clef '")or die(mysql_error());
- mysql_close();
- }
-
- else {echo "echec validation";}
-
- //si la variable clé (de la table compte_provisoir)
- if (empty($clef))
- { echo "votre compte est deja validé";}
-
- }
//------------------------------
// PAGE D INSCRIPTION
//------------------------------
//creation d une variable qui genere une clé a 10 chiffres
$numero = "0123456789";
$clef = str_shuffle($numero);
//envoi des données dans la table compte_provisoir avec la clé
if (sizeof($_POST))
{
if (isset($_POST['pseudo']) and isset($_POST['password']) and isset ($_POST['mail']))
{
$pseudo = $_POST['pseudo'];
$password = $_POST['password'];
$mail = $_POST['mail'];
mysql_connect("localhost", "root", "");
mysql_select_db("test");
mysql_query("INSERT INTO compte_provisoir VALUES('', '$clef', '$pseudo', '$password', '$mail')")or die(mysql_error());
$reponse_id = mysql_query("SELECT id FROM compte_provisoir WHERE pseudo = '$pseudo'")or die(mysql_error());
mysql_close();
echo "tu vas recevoir un mail";
//le mail est envoyé, l'url contient la clé et l'id pour la comparaison (page verification)
while ($donnees = mysql_fetch_array($reponse_id))
{
$id = $donnees['id'] ;
$mail_destinataire = $_POST['mail'];
$sujet = " validation de l'inscription";
$message = "Ton mot de passe est: $password \n Ton pseudo est: $pseudo \n \n Pour valider ton inscription clique sur le lien suivant: \n http://127.0.0.1:81/Php/zone_membre_validation.php?id=$id&clef=$clef";
$head = "Salut $pseudo ";
mail($mail_destinataire, $sujet, $message, $head);
}
}
//-----------------------------
// PAGE VERIFICATION (http://127.0.0.1:81/Php/zone_membre_validation.php?id=$id&clef=$clef)
//-----------------------------
//ici on recupere la clé et l id de l'url
if (isset($_GET['id']) and isset($_GET['clef']))
{
$recherche_id= $_GET['id'];
$recherche_clef = $_GET['clef'];
//on recupere les données de la table compte_provisoir
mysql_connect("localhost", "root", "");
mysql_select_db("test");
$reponse_comparaison = mysql_query("SELECT id, clef FROM compte_provisoir WHERE id = '$recherche_id'")or die(mysql_error());
$reponse_provisoir = mysql_query("SELECT clef, pseudo, password, mail FROM compte_provisoir WHERE id = '$recherche_id'")or die(mysql_error());
mysql_close();
while ($donnees_provisoir = mysql_fetch_array($reponse_provisoir))
{
$clef = $donnees_provisoir['clef'];
$pseudo = $donnees_provisoir['pseudo'];
$password = $donnees_provisoir['password'];
$mail = $donnees_provisoir['mail'];
}
while ($donnees_comparaison = mysql_fetch_array($reponse_comparaison))
{
//ici le plus important on compare la clé de la table compte_provisoir a celle de l'url, idem pour l'id, si elles sont identiques alors on en fait une requette pour balancer les données dans le compte_definitif et on supprime celles du compte provisoir
if ($donnees_comparaison['clef'] == $recherche_clef and $donnees_comparaison['id'] == $recherche_id)
{ echo "compte validé"};
mysql_connect("localhost", "root", "");
mysql_select_db("test");
mysql_query("INSERT INTO compte_definitif VALUES('', '$clef', '$pseudo', '$password', '$mail')")or die(mysql_error());
mysql_query("DELETE FROM compte_provisoir WHERE clef = '$clef '")or die(mysql_error());
mysql_close();
}
else {echo "echec validation";}
//si la variable clé (de la table compte_provisoir)
if (empty($clef))
{ echo "votre compte est deja validé";}
}
Conclusion
Vous pouvez ameliorer le script par exemple: effacer un compte de la table compte_provisoir au bout d'une semaine grace à la date... J attends vos remarques merci
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
FAIRE APPARAITRE L'ONGLET 'DéVELOPPEUR' DANS OFFICE 2010FAIRE APPARAITRE L'ONGLET 'DéVELOPPEUR' DANS OFFICE 2010 par neodante
La nouvelle interface d'Office 2010 à amener quelques modifications par rapport à celle de 2007. Certes mineures, ces modifications ont fait disparaître la case à cocher de l'onglet 'Développeur' en première page du panneau du 'bouton Office' (dans Office...
Cliquez pour lire la suite de l'article par neodante [ASTUCE] PATCH POUR MICROSOFT FORUMS NNTP BRIDGE V1[ASTUCE] PATCH POUR MICROSOFT FORUMS NNTP BRIDGE V1 par pierre
Si vous avez téléchargé comme moi Microsoft Forums NNTP Bridge V1 avant le 11 mars 2010 (voir [Astuce] Disponibilité de Microsoft Forum NNTP Bridge Version 1.0), un problème de date localisée pour les non anglais était présent. Un patch est disponibl...
Cliquez pour lire la suite de l'article par pierre PB LORS DE L'INSTALLATION SHAREPOINT 2010.PB LORS DE L'INSTALLATION SHAREPOINT 2010. par Patrick Guimonet
Lors de l'installation de SharePoint 2010, j'ai rencontré un problème de plantage à l'étape 5 du configuration Wizard. Ca se termine sur cet écran : Et en analysant le fichier de journalisation, on remarque vers la fin des 15000 et quelques lign...
Cliquez pour lire la suite de l'article par Patrick Guimonet [WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (2/2)[WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (2/2) par JeremyJeanson
Après mon précédent article qui attaque les contraintes par la fasse Nord de l'Everest. passons à la seconde possibilité offerte par WF4 pour valider une activité : la metadata . Je vous en ai déjà toucher un ou deux mots. La metadata dans WF4 est un élém...
Cliquez pour lire la suite de l'article par JeremyJeanson [WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (1/2)[WF4] AJOUTER DES CONTRAINTES à UNE ACTIVITé (1/2) par JeremyJeanson
De WF3 à WF4 pas mal de choses on été changées pour faciliter la vie des développeurs, mais certain points peuvent sembler obscures. comme les contraintes. Pour vous guider, je me lance dans une série de deux articles. Ils présenterons deux approches poss...
Cliquez pour lire la suite de l'article par JeremyJeanson
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|