Un espace membre avec systeme de validation

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 462 fois - Téléchargée 27 fois

Contenu du snippet

Gràce à ce code, les membres pourront valider leur compte depuis leur email, et en plus on sait jamais, peut etre que quelqu'un qui n'a rien à faire s'inscrit sur votre site et met n'importe quoi?

Source / Exemple :


La table mysql
CREATE TABLE membre (
id int(11) NOT NULL auto_increment,
pseudo varchar(255) NOT NULL default '',
pass varchar(255) NOT NULL default '',
email varchar(255) NOT NULL default '',
confirm varchar(25) NOT NULL default '',
KEY id (id)
) TYPE=MyISAM;

test.php
<form action="test2.php" method="post"><div align="center">  <p><a href="inscr.php">Inscription.</a></p>  <table width="244" border="1" bordercolor="#FF0000">    <tr>      <td width="64">Pseudo : </td>      <td width="164"><input name="pseudo" type="text" id="pseudo"></td>    </tr>    <tr>      <td>Pass : </td>      <td><input name="pass" type="password" id="pass"></td>    </tr>  </table>  <p>    <input type="submit" name="Submit" value="Envoyer">  </p></div></form>

test2.php
<?
session_start();
$_POST['pseudo'] == $_SESSION['pseudo'];
$_POST['pass'] == $_SESSION['pass'];

if (empty($_POST['pseudo']) AND ($_POST['pass']))
{
echo 'Vous avez oublié de mettre des données';
}
else
{
mysql_connect("localhost","xxxx","xxxxx");
mysql_select_db("xxxxx");

$sql = mysql_query("SELECT * FROM membre WHERE pseudo='$_POST[pseudo]'") or die('erreur:' .mysql_error());
while ($donnees = mysql_fetch_array($sql))
  {
    if ($_POST['pass'] == $donnees['pass']) 
    {
    // si le mot de passe est bon, mettez ici ce que vous voulez
    header("location:espace.php");
    }
    else
    {
    echo 'Votre mot de passe ou votre pseudo n\'est pas correcte, si vous n\'etes pas inscrit, veuillez vous inscrire!!<br>';
    echo '<a href="test.php">Retournez au menu</a>';
    }
  }    
  mysql_close();

} 
?>   

espace.php
<?
session_start();
if (!isset($_SESSION['pseudo']) AND ($_SESSION['pass']))
{
echo 'Vous n\'avez pas le droit d\'afficher cette page';
include ('test.php');

}
else
{
?>

<center><h2>Voici les membres déjà inscrits</h2></center><br>
Bienvenu <? echo $_SESSION['pseudo']; ?>

<?
mysql_connect("localhost","xxxx","xxxxx");
mysql_select_db("xxxx");

$sql = mysql_query("SELECT pseudo FROM membre") or die ('erreur :' .mysql_error());
if (mysql_num_rows($sql)==0){echo'Aucun membre inscrits';} 
else
{
while($lol = mysql_fetch_array($sql))
{
?>

<center><? echo $lol['pseudo']; ?></center><br>
<?

// Et continuez avec ce que vous voulez ici en html ou en php
}
}
}
?>

inscr.php
<html><head><title>Document sans titre</title><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></head><body><form action="inser.php" method="post"><div align="center">  <p>Inscription des membres : </p>  <table width="215" height="103" border="0">    <tr>      <td width="61">Pseudo : </td>      <td width="144"><input name="pseudo" type="text" id="pseudo"></td>    </tr>    <tr>      <td>Pass : </td>      <td><input name="pass" type="password" id="pass"></td>    </tr>    <tr>      <td>Email : </td>      <td><input name="email" type="text" id="email"></td>    </tr>  </table>  <p>    <input type="submit" name="Submit" value="Envoyer">  </p></div></form></body></html>

inser.php
<?
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$tele = str_shuffle($chaine);
$pseudo = htmlentities($_POST['pseudo']);
$pass = htmlentities($_POST['pass']);
$email = addslashes($_POST['email']);
$message = 'Cher '.$pseudo.',';
$message .= 'Ceci est un mail automatique de confirmation d\'inscription au site de Dyto : http://membres.lycos.fr/dyto1/cedric .';
$message .= 'Pour confirmer et ainsi terminer l\'inscription à votre compte, veuillez cliquer sur le lien de confirmation: ';
$message .= 'http://membres.lycos.fr/dyto1/confirm.php?pseudo='.str_replace(' ','%20',$pseudo);

if (!empty($pseudo) && !empty($pass) && !empty($email))
{
mysql_connect("localhost","xxxx","xxxx");
mysql_select_db("xxxxx");

$lol = mysql_query("INSERT INTO membre VALUES('','$pseudo','$pass','$email','0')") or die('erreur: '.mysql_error());  

echo 'Vous avez bien été rajoutée, un email va etre envoye dans votre email';
mail($email,'Confirmation d\'inscription à Dytomania',$message);
}
else
{
echo 'Vous avez oublié de mettre un champ';
}
mysql_close();
?>

confirm.php
<?
mysql_connect("localhost","dyto1","frfrfr");
mysql_select_db("dyto1");

$mimi = mysql_query("UPDATE membre SET confirm='1' WHERE pseudo='$_GET[pseudo]'") or die ('erreur : '.mysql_error());
echo 'Vous avez bien été validée, cliqez <a href="index.php">ici</a> pour retourner a l\index<br>';
echo 'Merci Ced';
?>

Conclusion :


Voilà, je remercie les personnes du sdz qui m'ont aidés et aussi que ce code est disponible sur http://www.siteduzero.com/vostutos/index.php?s=viewtuto&tutoid=224, si ce n'est pas clair, venez sur ce lien, mon code est un peu plus détaillé :D

A voir également

Ajouter un commentaire

Commentaires

Messages postés
1
Date d'inscription
dimanche 8 juillet 2012
Statut
Membre
Dernière intervention
11 juillet 2012

code nul car la base de donnée et déjà rempli avant même de valider le lien dans le mail je ne voie aucun intérêt du mail de validation ???
Messages postés
9
Date d'inscription
mercredi 1 juin 2011
Statut
Membre
Dernière intervention
31 mars 2013

au risque de paraître ignare, je vais poser mon problème.
j'essai de construire un espace membre tout simplement de meme qu'un forum. J'aurais appris à le faire volontier si je comprenais ce que les tutoriels offraient....ms c'est bien loin du html et php de base que je connais.

j'essai d'utiliser votre script, je l'ai intégrée à ma page d'accieul en fesant du copier/coller mais en fesant "run" j'ai du code de programmation sur la page et plusieurs kit de connexion sur la seule page.

Grand-Dieu, pouvez vous définitivement me tirer de l'obsurité? MERCI
Messages postés
5
Date d'inscription
jeudi 18 janvier 2007
Statut
Membre
Dernière intervention
19 janvier 2007

slt bon voila jai ma page index.php fini jai mon tableau avec espace membres (pseudo)(mot de passe) comme une personne entre son pseudo et mot-passe et il clic sur connection comment faire pour que le tableau sa mes bienvenue $pseudo mes plus le tableau (pseudo)(mot de passe) une petite aide svp..
Messages postés
1
Date d'inscription
jeudi 6 février 2003
Statut
Membre
Dernière intervention
11 octobre 2005

en plus tu ne test pas si le pseudo est confirmé sur la page de verification du login...
Messages postés
3
Date d'inscription
samedi 4 juin 2005
Statut
Membre
Dernière intervention
4 juin 2005

dans ce site également www.misfu.com ta pas mal de gens compétent sur les forums..
Afficher les 14 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.

Du même auteur (dyto)