Un espace membre avec systeme de validation

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

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)