Impossible d'activer mon compte en local
Résolu
Janyduchemin
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
A voir également:
- Impossible d'activer mon compte en local
- Appdata local - Guide
- Créer un compte google - Guide
- Comment savoir qui regarde mon compte facebook - Guide
- Activer office gratuitement - Accueil - Bureautique
- Activer mon compte vinted - Guide
1 réponse
Bonjour,
Pas très claire ta question.........
Donc, ton souci concerne un souci avec le langage PHP.
Je déplace donc ta question dans le bon forum.
Et visiblement... vu le "message d'erreur"... il semble simplement que l'url qui se trouve dans ton mail ne soit pas complète.
Il manque le "domaine" de ton site.... ( à minima, vu que tu es en local.... http://localhost/ " ) ( à moins que tu n'aies mis en place des virtualHosts
Si tu veux plus d'aide, pense à nous partager ton code en utilisant les BALISES DE CODE.
Explications ( à lire ENTIEREMENT ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
PS: Je t'invite également à lire et à appliquer les conseils suivants pour écrire ton code :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
.
Pas très claire ta question.........
Donc, ton souci concerne un souci avec le langage PHP.
Je déplace donc ta question dans le bon forum.
Et visiblement... vu le "message d'erreur"... il semble simplement que l'url qui se trouve dans ton mail ne soit pas complète.
Il manque le "domaine" de ton site.... ( à minima, vu que tu es en local.... http://localhost/ " ) ( à moins que tu n'aies mis en place des virtualHosts
Si tu veux plus d'aide, pense à nous partager ton code en utilisant les BALISES DE CODE.
Explications ( à lire ENTIEREMENT ! ) disponibles ici : https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
PS: Je t'invite également à lire et à appliquer les conseils suivants pour écrire ton code :
https://forums.commentcamarche.net/forum/affich-37584947-php-gestion-des-erreurs-debogage-et-ecriture-du-code
.
.
merci pour vos explications voila le lien de mon site en local (http://localhost/shop/activate.php?token=49ae07ec1ba6bf4fe2468f014260e99b9f63876f&email=napyconcept%40gmail.com
<?php require 'includes/includes.php';
require 'includes/header.php';
?>
<?php
if(!empty($_POST)){
if(!empty($_POST['password']) && ( filter_var($_POST['email'],FILTER_VALIDATE_EMAIL) ) ){
$email= addslashes($_POST['email']);
// modifier sha1 par Auth::hashPassword();
$password = sha1($_POST['password']);
$token = sha1(uniqid(rand()));
$nom=addslashes($_POST['nom']);
$adresse = addslashes($_POST['adresse']);
$ville = addslashes($_POST['ville']);
$codepostale =addslashes($_POST['codepostale']);
$reponse = $DB->uniqueEmail($email);
if($reponse !=0){
$_SESSION['erreur'] = "Adresse email déja utilisée par un membre.";
}else{
$data = array(
'nom'=>$nom,
'email'=>$email,
'password'=>$password,
'token'=>$token,
'adresse'=>$adresse,
'ville'=>$ville,
'codepostale'=>$codepostale
);
$sql ='INSERT INTO users (nom,email,password,token,adresse,ville,codepostale) VALUES(:nom,:email,:password,:token,:adresse,:ville,:codepostale)';
$req= $DB->insert($sql,$data);
//envoi d'email.
$mail_to =$email;
$mail_subject =" Validation de votre compte !!";
$headers = "From : hypernapy.com\r\n";
$headers.="Reply-To:***@*** \r\n";
$headers.="MIME-Version 1.0\r\n";
$headers.="Content-type: text/html;charset=utf-8\r\n";
$mail_body ='Bonjour <br/> Veuillez ciquer sur <a href="http://localhost/shop/activate.php?token='.$token.'&email='.$email.'"> le lien </a>pour activer votre compte ';
if(mail($mail_to,$mail_subject,$mail_body,$headers)){
$_SESSION['message'] = " Un émail a été envoyé a votre méssagerie avec des instructions pour activer votre compte ";
unset($_POST);
}else{
$_SESSION['erreur'] = "Un problème est survenu lors de l'envoi d'email !.";
}
}
}else{
if(empty($_POST['password'])){
$erreur_password ='Un mot de passe est requis !.';
$_SESSION['erreur'] = ' Veuillez corriger les érreurs .';
}
if(empty($_POST['email'])){
$erreur_email ='Le champs email est requis !';
$_SESSION['erreur'] = ' Veuillez corriger les érreurs .';
}else
if(!filter_var($_POST['email'],FILTER_VALIDATE_EMAIL) ){
$erreur_email ='Adresse Email non valide !';
$_SESSION['erreur'] = ' Veuillez corriger les érreurs .';
}
}
}
?>
<!-- message de session -->
<?php if (isset($_SESSION['message'])): ?>
<div class="message"> <?php echo $_SESSION['message']; ?></div>
<?php unset($_SESSION['message']) ?>
<?php endif ?>
<?php if (isset($_SESSION['erreur'])): ?>
<div class="errorMessage"> <?php echo $_SESSION['erreur']; ?></div>
<?php unset($_SESSION['erreur']) ?>
<?php endif ?>
<!-- formulaire d'inscription -->
<form action="signup.php" method="post" id="signup">
<h2>Inscription</h2>
<fieldset>
<p>
<label for="nom">Nom :</label>
<input type="text" name="nom" id ="nom" value="<?php echo isset($_POST['nom'])?$_POST['nom']:''; ?>">
</p>
<p>
<label for="email" class="required">Email :</label>
<input type="email" name="email" id ="email" value="<?php echo isset($_POST['email'])?$_POST['email']:''; ?>">
</p>
<?php if (!empty($erreur_email)): ?>
<div class="error"><?php echo $erreur_email; ?></div>
<?php endif ?>
<p>
<label for="password" class="required">Mot de passe :</label>
<input type="password" name="password" id ="password">
</p>
<?php if (!empty($erreur_password)): ?>
<div class="error"><?php echo $erreur_password; ?></div>
<?php endif ?>
</fieldset>
<fieldset>
<p>
<label for="adresse">Adresse :</label>
<input type="text" name="adresse" id ="adresse" value="<?php echo isset($_POST['adresse'])?$_POST['adresse']:''; ?>">
</p>
<p>
<label for="ville">Ville :</label>
<input type="text" name="ville" id ="ville" value="<?php echo isset($_POST['ville'])?$_POST['ville']:''; ?>">
</p>
<p>
<label for="codepostale">Code postale :</label>
<input type="text" name="codepostale" id ="codepostale" value="<?php echo isset($_POST['codepostale'])?$_POST['codepostale']:''; ?>">
</p>
</fieldset>
<div class="clearfix"></div>
<p class="information">* Champs requis</p>
<p>
<input type="submit" value ="S'inscrire">
</p>
</form>
<?php require 'includes/footer.php'; ?>
...............................................................................................................................
et voila le code source de la page activate.php
<?php require 'includes/includes.php'; ?>
<?php require 'includes/header.php'; ?>
<?php
if(!empty($_GET) && isset($_GET['token']) && isset($_GET['email']) ){
$token = $_GET['token'];
$email = $_GET['email'];
$q = array(
'email'=> $email,
'token'=> $token
);
$sql= 'SELECT email,token from users where email=:email AND token=:token';
$reponse = $DB->query($sql,$q);
if(!empty($reponse)){
$q = array(
'email'=> $email,
'active'=> '1'
);
$sql= 'SELECT email,active from users where email=:email AND active=:active';
$rep = $DB->query($sql,$q);
if($rep){
// deja actif
$messageErreur ='Utilisateur déja actif !.';
}else{
// activer le compte
$sql = 'UPDATE users SET active=:active WHERE email=:email';
$DB->insert($sql,array('email'=>$email,'active'=>1));
$message ='Votre compte est activé avec succés .';
}
}else{
//user inconnu
$messageErreur ='Utilisateur inconnu dans notre base !.';
}
}else{
header('location:index.php');
}
?>
<?php if (isset($message)): ?>
<div class="message"> <?php echo $message; ?></div>
<?php endif ?>
<?php if (isset($messageErreur)): ?>
<div class="errorMessage"> <?php echo $messageErreur; ?></div>
<?php endif ?>
<p>
<a href="index.php"> Retour à l'acceuil du site</a>
</p>
<?php require 'includes/footer.php'; ?>
Pour rappel