luis24 Posted January 10, 2016 Share Posted January 10, 2016 (edited) Bonjour, Je rencontre une difficulté avec ma boutique 1.5.4 : lorsqu'un client a oublié son mot de passe et qu'il souhaite donc en générer un nouveau, il reçoit bien le premier email (Confirmation de demande de mot de passe avec le lien à cliquer pour la génération). En cliquant sur ce lien, le client arrive bien sur mon site qui lui indique que le nouveau mot de passe a bien été généré et transmis par email sauf que cet email n'arrive jamais à mon client... Tous les autres emails sont bien envoyés (par exemple, confirmation de commande) mais celui avec le nouveau mot de passe n'arrive jamais... Pourriez-vous m'apporter votre aide svp ? Merci ;-) Edited January 26, 2016 by luis24 (see edit history) Link to comment Share on other sites More sharing options...
lion-s Posted January 11, 2016 Share Posted January 11, 2016 bonsoir luis vas dans la fiche de ton client change le mots de passe par 123456789 (ou ce que tu veux) et envoies le à ton client, ensuite à lui de mettre le passe qu'il souhaite. je ne pense pas que cela va résoudre ton souci de régénération de mot de passe, mais c'est le plus pour aider ton client rapidement. christophe 1 Link to comment Share on other sites More sharing options...
luis24 Posted January 12, 2016 Author Share Posted January 12, 2016 Bonjour Christophe et merci pour ta réponse ! c'est effectivement ce que je fais pour le moment après avoir modifié le lien "mot de passe oublié ?" du formulaire de connexion. Ce dernier renvoie maintenant vers le formulaire de contact et le client doit me réclamer un nouveau mot de passe, mais c'est vraiment pas pratique Link to comment Share on other sites More sharing options...
lion-s Posted January 12, 2016 Share Posted January 12, 2016 de rien luis n'étant pas un pro du développement php, je ne pourrais pas t'aider dans la modification du code, apparemment ton souci vient après que tu as modifié le lien du formulaire de connexion. ajoute le code que tu as modifié, les développeurs pourront voir l'erreur que tu as fais, par contre donne toutes les informations, la version de prestashop, le thème que tu utilise etc... cela leurs sera très utile christophe Link to comment Share on other sites More sharing options...
luis24 Posted January 13, 2016 Author Share Posted January 13, 2016 Merci pour les conseils ! Je n'ai modifié aucun code justement ;-) La seule modification faite (changement du lien "mot de passe oublié ?" vers le formulaire de contact) a été réalisée pour contourner ce problème mais ce n'est pas satisfaisant car je dois assigner les nouveaux mots de passe manuellement Le site est donc sur prestashop 1.5.4 avec le theme Leofashion. Link to comment Share on other sites More sharing options...
lion-s Posted January 13, 2016 Share Posted January 13, 2016 bonjour luis tu devrais poser la question à la personne qui a crée le thème, lui pourra te répondre. christophe Link to comment Share on other sites More sharing options...
luis24 Posted January 15, 2016 Author Share Posted January 15, 2016 bonjour luis tu devrais poser la question à la personne qui a crée le thème, lui pourra te répondre. christophe C'est la première chose que j'aurais dû faire... merci ;-) Je reviendrai poster la solution ici ! Link to comment Share on other sites More sharing options...
luis24 Posted January 26, 2016 Author Share Posted January 26, 2016 Le développeur m'ayant indiqué que cela ne venait pas de son thème (car l'erreur était identique avec le thème par défaut), j'ai dû me replonger seul dans le problème... En fouillant dans la base de données, je me suis rendu compte que les nouveaux mots de passe étaient bien générés, même pour les clients qui ne recevaient pas l'email avec le nouveau mot de passe (oui, oui, certains clients recevaient l'email, d'autres non...). Du coup, j'ai modifié controllers/front/PasswordController.php pour faire afficher le nouveau mot de passe directement sur la page de confirmation d'envoi d'email. Juste après : if (Mail::Send($this->context->language->id, 'password', Mail::l('Your new password'), $mail_params, $customer->email, $customer->firstname.' '.$customer->lastname)) J'ai donc ajouté ceci : $this->context->smarty->assign(array('confirmation' => 3, 'passwordnouveau' => $password)); Et dans le fichier password.tpl du theme, j'ai ajouté ceci au début : {if isset($confirmation) && $confirmation == 3} <p class="success">{l s='Voici votre nouveau mot de passe : '} {if isset($passwordnouveau)}{$passwordnouveau}{/if}</p> {/if} Du coup, tous les clients verront leur nouveau mot de passe affiché sur le site juste après avoir cliqué sur le lien envoyé dans le premier email et certains recevront ce nouveau mot de passe par email (en plus). Par contre, je ne sais toujours pas pourquoi certains clients ne reçoivent pas l'email avec le nouveau mot de passe, mais bon, on va dire que le problème est résolu ;-) 1 Link to comment Share on other sites More sharing options...
GAELLE Posted June 17, 2016 Share Posted June 17, 2016 Bonjour :-) Merci beaucoup pour cette modif qui me sera très utile! cependant j'ai un souci je tombe sur une page d'erreur quand je fais les modifs dans les deux fichiers, je ne sais pas ou je me suis trompée :-( voici les modifs que j'ai effectuées dans le passwordcontroller.php if (Mail::Send($this->context->language->id, 'password', Mail::l('Your new password'), $mail_params, $customer->email, $customer->firstname.' '.$customer->lastname)); $this->context->smarty->assign(array('confirmation' => 3, 'passwordnouveau' => $password)); else $this->context->smarty->assign(array('confirmation' => 1, 'customer_email' => $customer->email)); else $this->errors[] = Tools::displayError('An error occurred while sending the email.'); } else $this->errors[] = Tools::displayError('An error occurred with your account, which prevents us from sending you a new password. Please report this issue using the contact form.'); } } else $this->errors[] = Tools::displayError('We cannot regenerate your password with the data you\'ve submitted.'); } elseif (Tools::getValue('token') || Tools::getValue('id_customer')) $this->errors[] = Tools::displayError('We cannot regenerate your password with the data you\'ve submitted.'); } et voici les modifs que j'ai fais dans password.tpl @author PrestaShop SA <[email protected]> * @copyright 2007-2014 PrestaShop SA * @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0) * International Registered Trademark & Property of PrestaShop SA *} {capture name=path}<a href="{$link->getPageLink('authentication', true)|escape:'html':'UTF-8'}" title="{l s='Authentication'}" rel="nofollow">{l s='Authentication'}</a><span class="navigation-pipe">{$navigationPipe}</span>{l s='Forgot your password'}{/capture} <div class="box"> <h1 class="page-subheading">{l s='Forgot your password?'}</h1> {include file="$tpl_dir./errors.tpl"} {if isset($confirmation) && $confirmation == 3} <p class="success">{l s='Voici votre nouveau mot de passe : '} {if isset($passwordnouveau)}{$passwordnouveau|escape:'html':'UTF-8'|stripslashes}{/if}</p> {if isset($confirmation) && $confirmation == 1} <p class="alert alert-success">{l s='Your password has been successfully reset and a confirmation has been sent to your email address:'} {if isset($customer_email)}{$customer_email|escape:'html':'UTF-8'|stripslashes}{/if}</p> {elseif isset($confirmation) && $confirmation == 2} <p class="alert alert-success">{l s='A confirmation email has been sent to your address:'} {if isset($customer_email)}{$customer_email|escape:'html':'UTF-8'|stripslashes}{/if}</p> {else} <p>{l s='Please enter the email address you used to register. We will then send you a new password. '}</p> <form action="{$request_uri|escape:'html':'UTF-8'}" method="post" class="std" id="form_forgotpassword"> Merci beaucoup pour votre aide :-))) bonne journée!! Link to comment Share on other sites More sharing options...
aurélie87 Posted November 13, 2018 Share Posted November 13, 2018 (edited) Bonjour, excusez moi de vous déranger mais après la manip, le message "voici votre nouveau mot de passe :" apparaît bien mais pas de mot de passe visible... pourriez-vous m'aider svp ? Merci d'avance 😉 Edited November 13, 2018 by aurélie87 (see edit history) Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now