Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 04-12-2007 15:04:31

steplessis
Membre
Date d'inscription: 08-11-2007
Messages: 1

clé d'activaton

Bonjour,
Je suis actuelement en cours de conception de mon site...je developpe la parti connection du client...l'inscription ce passe très bien et un email de confirmation et bien envoyé avec la clé d'activaton...mon souci c'est c'est que la clé n'est pas vu comme un lien (dans le mail) il faut que je la copie dans ma barre d'adresse mais cela ne valide pas mon compte....
Je vous donne le lien de la page ou vous pourrez tester tout ce que je viens de vous dire: http://www.ink-francetoner.com/espaceme/index.php

Si quelqu'un pouvait m'aider car je mouline dessus depuis 5 jours !!!

Je vous met aussi le code de la page qui doit envoye le mail :

<?php
session_start(); //On demarre une session parce que j'ai envi ^^
require("conf.php3"); //On insert le fichier qui contient les informations

$mail = htmlentities($_POST['mail']);

if (preg_match("!^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$!", $mail)) //Verifie que l'email entrée n'est pas une fausse.
{
$chaine = "abcdefghijklmnopqrstuvwxyz0123456789";
$confirm = str_shuffle($chaine); //On créé le code de confirmation

$pseudo = htmlentities($_POST['pseudo']); //On recupère les infos
$mdp = htmlentities($_POST['mdp']);
$verif_mdp = htmlentities($_POST['verif_mdp']);
$nom = htmlentities($_POST['nom']);
$prenom = htmlentities($_POST['prenom']);
$website = htmlentities($_POST['website']);
$pays = htmlentities($_POST['pays']);
$born = htmlentities($_POST['born']);

/*On Fait la variable contenant le mail de confirmation*/

$message1 = '<html><body>Bonjour ' . $pseudo . ' et bienvenue sur ' .$nom_site. '.</br>';
$message1 .= '</br>';
$message1 .= 'Vous venez de vous inscrire et nous sommes heureux<br>de pouvoir vous compter aujourd\'hui parmi nos clents.<br>';
$message1 .= 'Voici un rappel de vos identifiants, notez les précieusement : <br>';
$message1 .= 'Votre Pseudo : ' . $pseudo .'.<br>';
$message1 .= 'Votre Mot de passe: ' . $mdp .'.<br><br>';
$message1 .= 'Votre Mail: ' . $mail .'.<br><br>';
$message1 .= 'Votre Nom: ' . $nom .'.<br><br>';
$message1 .= 'Votre Prenom: ' . $prenom .'.<br><br>';
$message1 .= 'Votre Pays: ' . $pays .'.<br><br>';
$message1 .= 'Votre Site Web ' . $website .'.<br><br>';
$message1 .= 'Votre Date de naissance: ' . $born .'.<br><br>';
$message1 .= 'Si vous souhaitez changer vos informations, rendez-vous dans votre compte pour les mettre à jour.<br>';
$message1 .= 'Votre Clé d\'activation:<br>';
$message1 .= '' .$url_script. '/confirm.php?login=' . str_replace(' ','%20',$pseudo) . '&confirm=' . $confirm . '<br><br>';
$message1 .= 'A très bientôt sur le site!<br>L\'équipe de ' .$nom_site. '.<br><a href="' .$url_site. '">' .$nom_site. '</a>';

$sql = connect_sql(); //On se connecte à MySQL

$verification = mysql_query("SELECT COUNT(*) FROM pdf_membre WHERE pseudo='$pseudo' OR mail='$mail'") or die (mysql_error());
$donnees = mysql_fetch_array($verification)or die (mysql_error());

if($donnees['COUNT(*)'] >= 1) //On verifie que le pseudo n'existe pas déjà
{
$reponse = 'Le pseudo ou l\'email est déjà utilisé, merci d\'en choisir un(e) autre. <a href="javascript:history.back(1)">Retour au formulaire</a>';
}
else
{
if( empty($pseudo) || empty($mdp) || empty($verif_mdp) || empty($mail) || empty($nom) || empty($prenom) || empty($born)) //On verifie que les variables précédentes ne soient pas vide
{
$reponse = 'Un ou plusieurs champs ne sont pas remplis, <a href="javascript:history.back(1)">Retour au formulaire</a>';
}
elseif( $mdp != $verif_mdp) //On verifie que les 2 pass sont identiques
{
$reponse = 'Les mots de passe ne sont pas identiques, <a href="javascript:history.back(1)">Retour au formulaire</a>';
}
else //Si tout est bon on entre les données dans la BDD et on envoye le mail
{
mysql_query("INSERT INTO pdf_membre VALUES ('','$pseudo', '$mdp', '$mail', '$confirm', '$nom', '$prenom', '$pays', '$born', '$website')");
$reponse = 'Bravo, vous êtes maintenant inscrit sur ' .$nom_site. '. <br>Vous allez recevoir un e-mail pour activer votre compte. <br><a href="' .$url_site. '">Retour à l\'Accueil</a>';
$entete = "MIME-Version: 1.0\r\n";
$entete .= "Content-type: text/html; charset=iso-8859-1\r\n";
$entete .= "From: <$email_admin>\r\n";
$entete .= "Reply-To: $email_admin\r\n";
mail($mail,'Bienvenue sur ' .$nom_site. ' ' . $login .'.' , $message1, $entete);
}
}

mysql_close($sql); //On se deconnecte
}
else //Reponse si l'adresse e-mail est une fausse
{
$reponse = 'Votre adresse e-mail "' . $mail . '" n\'est pas correcte. <a href="javascript:history.back(1)">Retour au formulaire</a>';
}




?>

<html>
<body>
<? echo $reponse; ?>
<!-- On affiche la reponse de tout le code du dessus -->
</body>
</html>


Merci d'y jeter un oeil et de me dire ou est l'erreur....

Très cordialement

Stephane

Hors ligne

 

#2 05-12-2007 03:10:11

lolo3129
Membre
Lieu: Paris
Date d'inscription: 10-05-2005
Messages: 543
Site web

Re: clé d'activaton

il faut mettre les balise <a> autour du lien d'activation, comme tu l'as fait pour le lien vers ton site !

pour la partie validation du compte, il faudrait que tu postes le code de ta page confirm.php

Dernière modification par lolo3129 (05-12-2007 03:11:16)

Hors ligne

 

#3 05-12-2007 09:56:32

Philippe Gamache
Administrateur
Date d'inscription: 17-08-2006
Messages: 147

Re: clé d'activaton

N'envois pas de courriel en HTML... Tu réduis beaucoups tes chances de passer les logiciels anti-spam.

SVP, met ton code dans une balise code... Comme les réglements du forum le spécifie.

Hors ligne