Laetitia

Inscris le 03/01/2010 à 10:05
  • Nombre de sujets
    1
  • Nombre de messages
    2
  • Nombre de commentaires
    Aucun
  • Nombre de news
    Aucune
  • Niveau en PHP
    Débutant

Ses dernières news

Aucune news

Ses derniers sujets sur les forums

forum
Laetitia
Bonjour,

Voilà, j'ai fais le tutoriel proposé pour créer un espace membre, puis celui sur la messagerie interne. Seulement, il n'y a aucune protection anti-robot il me semble? Le formulaire pourrait être remplis automatiquement?

Donc, j'ai cherché et j'ai fais un autre tutoriel, d'un autre site. Pas mal aussi, qui lui propose l'activation du compte, à l'aide d'un mail.

J'ai donc essayé de faire "mon code" avec un espace membre qui s'active par mail, et avec une messagerie interne.

Sauf que ça ne marche pas :/

Je sais pas trop si vous pouvez m'aider? Me dire comment ajouter une validation de compte par e-mail, au tuto qui est sur ce site?

Merci d'avance :)

Ses derniers messages sur les forums

forum
Laetitia
J'ai fais plusieurs codes, j'me suis embrouillé, alors j'ai repris vraiment le tuto de ce site, et j'ai juste ajouté la confirmation par mail, ce qui donne :

(bien sur j'ai enlevé mes identifiants de connexion pour le forum^^

<?php
if (isset($_POST['inscription']) && $_POST['inscription'] == 'Inscription') {
if ((isset($_POST['login']) && !empty($_POST['login'])) && (isset($_POST['mail']) && !empty($_POST['mail'])) && (isset($_POST['pass']) && !empty($_POST['pass'])) && (isset($_POST['pass_confirm']) && !empty($_POST['pass_confirm']))) {
if ($_POST['pass'] != $_POST['pass_confirm']) {
$erreur = 'Les 2 mots de passe sont différents.';
}
else {
$base = mysql_connect ('serveur', 'login', 'mdp');
mysql_select_db ('base', $base);

$sql = 'SELECT id FROM membre WHERE login="'.mysql_escape_string($_POST['login']).'"';
$req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error());
$nb = mysql_num_rows($req);

if ($nb == 0) {

// Génération de la clef d'activation
$caracteres = array("a", "b", "c", "d", "e", "f", 0, 1, 2, 3, 4, 5, 6, 7, 8, 9);
$caracteres_aleatoires = array_rand($caracteres, 8);
$clef_activation = "";

foreach($caracteres_aleatoires as $i)
{
$clef_activation .= $caracteres[$i];
}

// Création du compte
$result = mysql_query("
INSERT INTO membre(
login
, pass
, mail
, Date_Inscription
, Clef_Activation
)
VALUES(
'" . $_POST["login"] . "'
, '" . md5($_POST["pass"]) . "'
, '" . $_POST["mail"] . "'
, '" . time() . "'
, '" . $clef_activation . "'
)
");

// S'il y a une erreur
if(!$result)
{
$message = "Erreur d'accès à la base de données lors de la création du compte utilisateur";
}
else
{

// Envoi du mail d'activation
$sujet = "Activation de votre compte utilisateur";

$message = "Pour valider votre inscription, merci de cliquer sur le lien suivant :\n";
$message .= "http://" . $_SERVER["SERVER_NAME"];
$message .= "/membre/activer-compte-utilisateur.php?id=" . mysql_insert_id();
$message .= "&clef=" . $clef_activation;

// S'il y a une erreur
if(!@mail($_POST["mail"], $sujet, $message))
{
$message = "Une erreur est survenue lors de l'envoi du mail d'activation<br />\n";
$message .= "Veuillez contacter l'administrateur afin d'activer votre compte";
}
else
{

// Message de confirmation
$message = "Votre compte utilisateur a correctement été créer<br />\n";
$message .= "Un email vient de vous être envoyer afin de l'activer";
}



// id du membre
$id = mysql_insert_id();

session_start();
$_SESSION['login'] = $_POST['login'];

// stocke l'id
$_SESSION['id'] = $id;
header('Location: /membre.php');
exit();
}

}

mysql_close ();
}


?>
<html>
<head>
<title>Inscription</title>
</head>
<body>
Inscription à l'espace membre :<br />
<form action="/inscription2.php" method="post">
Login : <input type="text" name="login" value="<?php if (isset($_POST['login'])) echo stripslashes(htmlentities(trim($_POST['login']))); ?>"><br />
Mot de passe : <input type="password" name="pass" value="<?php if (isset($_POST['pass'])) echo stripslashes(htmlentities(trim($_POST['pass']))); ?>"><br />
Confirmation du mot de passe : <input type="password" name="pass_confirm" value="<?php if (isset($_POST['pass_confirm'])) echo stripslashes(htmlentities(trim($_POST['pass_confirm']))); ?>"><br />
Adresse e-mail : <input type="text" name="mail" value="<?php if (isset($_POST['mail'])) echo stripslashes(htmlentities(trim($_POST['mail']))); ?>"><br />
<input type="submit" name="inscription" value="Inscription">
</form>
</body>
</html>
Laetitia
Bonjour,

Voilà, j'ai fais le tutoriel proposé pour créer un espace membre, puis celui sur la messagerie interne. Seulement, il n'y a aucune protection anti-robot il me semble? Le formulaire pourrait être remplis automatiquement?

Donc, j'ai cherché et j'ai fais un autre tutoriel, d'un autre site. Pas mal aussi, qui lui propose l'activation du compte, à l'aide d'un mail.

J'ai donc essayé de faire "mon code" avec un espace membre qui s'active par mail, et avec une messagerie interne.

Sauf que ça ne marche pas :/

Je sais pas trop si vous pouvez m'aider? Me dire comment ajouter une validation de compte par e-mail, au tuto qui est sur ce site?

Merci d'avance :)

Ses derniers commentaires de news

Aucun commentaire de news

Ses derniers commentaires de sites

Aucun commentaire de sites

Ses derniers commentaires de wall

Aucun commentaire wall
LoadingChargement en cours