Ir para conteúdo
  • 0

Página de Esqueci a Senha - lostaccount.php


gabrielmontes

Pergunta

Boa tarde,

 

Não sei se é nessa categoria o problema relacionado.

 

Configurei o meu config.php de acordo com as informações para envio de e-mail, porém, no lostaccount não sei se está com algum problema.

Eu tento colocar para recuperar a conta e/ou alterar o e-mail e simplesmente nada acontece. O e-mail não é enviado.

Vocês poderiam me dar um apoio para que eu deixe funcional? Essa opção é necessária no meu servidor.

 

Estou tentando fazer com que a pessoa possa alterar a senha pelo site com a RK ou simplesmente receber uma nova senha por e-mail.

 

Poderiam verificar se tem algo de errado? É baseado no Gesior 2012 o site.
 

Spoiler

<?php
if(!defined('INITIALIZED'))
    exit;

if($config['site']['send_emails']){
    if(!$logged)    {
        if(!isset($_REQUEST['step'])){
            $main_content .= '
                 <B>Welcome to the Lost Account Interface!</B><BR>
                <BR>
                If you have lost access to your account, this interface can help you. Of course, you need to prove that your claim to the account is justified. Enter the requested data and follow the instructions carefully. Please understand there is no way to get access to your lost account if the interface cannot help you. Two further options to change account data are available if you have a registered account.<BR>
                <BR>
                By using the Lost Account Interface you can
                <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                    <TR>
                        <TD><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=10 HEIGHT=1 BORDER=0></TD>
                        <TD>
                            <TABLE CELLSPACING=1 CELLPADDING=0 BORDER=0 WIDTH=100%>
                                <TR>
                                    <TD COLSPAN=2><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=1 HEIGHT=1 BORDER=0></TD>
                                </TR>
                                <TR>
                                    <TD VALIGN=top><IMG SRC="'.$layout_name.'/images/global/content/bullet.gif" WIDTH=12 HEIGHT=15 BORDER=0></TD>
                                    <TD>get a new password if you have lost the current password,</TD>
                                </TR>
                                <TR>
                                    <TD VALIGN=top><IMG SRC="'.$layout_name.'/images/global/content/bullet.gif" WIDTH=12 HEIGHT=15 BORDER=0></TD>
                                    <TD>receive your account name if you do not know it anymore,</TD>
                                </TR>
                                <TR>
                                    <TD VALIGN=top><IMG SRC="'.$layout_name.'/images/global/content/bullet.gif" WIDTH=12 HEIGHT=15 BORDER=0></TD>
                                    <TD>get your account back if it has been hacked,</TD>
                                </TR>
                                <TR>
                                    <TD VALIGN=top><IMG SRC="'.$layout_name.'/images/global/content/bullet.gif" WIDTH=12 HEIGHT=15 BORDER=0></TD>
                                    <TD>change the email address of your account instantly (only available to registered accounts),</TD>
                                </TR>
                                <TR>
                                    <TD VALIGN=top><IMG SRC="'.$layout_name.'/images/global/content/bullet.gif" WIDTH=12 HEIGHT=15 BORDER=0></TD>
                                    <TD>request a new recovery key (only available to registered accounts).</TD>
                                </TR>
                            </TABLE>
                        </TD>
                        <TD><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=10 HEIGHT=1 BORDER=0></TD>
                    </TR>
                </TABLE>
                <BR>
                <BR>
                As a first step to use the Lost Account Interface please enter the name of a character on the lost account and click on "Submit".<BR>
                <BR>
                <FORM ACTION="?subtopic=lostaccount" METHOD=post>
                    <INPUT TYPE=hidden NAME="step" VALUE="problem">
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Enter Character Name</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1">Character name:
                                <INPUT NAME="character" SIZE=30 MAXLENGTH=30></TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                    <TR>
                        <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                        <TD ALIGN=center><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <TR>
                                <TD><INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/global/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                            </TR>
                        </FORM>
                    </TABLE>
                </TD>
                <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
            </TR>
        </TABLE>';
        }
        if($_REQUEST['step'] == "problem")        {
            $character = trim(stripslashes($_POST['character']));
            $char = new Player();
            $char->find($character);
            if($char->isLoaded()) {
                $main_content .= '
                     The Lost Account Interface can help you to solve all problems listed below. Please select your problem and click on "Submit".<BR>
                    <BR>
                    <FORM ACTION="?subtopic=lostaccount" METHOD=post>
                        <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'">
                        <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                            <TR>
                                <TD BGCOLOR="#505050" CLASS=white><B>Specify Your Problem</B></TD>
                            </TR>
                            <TR>
                                <TD BGCOLOR="#D4C0A1"><INPUT TYPE=radio NAME="step" VALUE="password">
                                    I have forgotten my password.<BR>
                                    <INPUT TYPE=radio NAME="step" VALUE="name">
                                    I have forgotten my account name.<BR>
                                    <INPUT TYPE=radio NAME="step" VALUE="both">
                                    I have forgotten both my password and my account name.<BR>
                                    <INPUT TYPE=radio NAME="step" VALUE="email">
                                    I want to change the email address of my account instantly.<BR>
                                </TD>
                            </TR>
                        </TABLE>
                        <BR>
                        <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                            <TD ALIGN=center><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                                <TR>
                                    <TD><INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/global/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                                </TR>
                            </FORM>
                        </TABLE>
                    </TD>
                    <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                </TR>
            </TABLE>';
            }else{
                $main_content .= '
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Error</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1"><TABLE>
                                    <TR>
                                        <TD> Character <B>'.$character.'</B> does not exist. Please make sure to enter the character name correctly. Note that characters are deleted automatically if they have not been used for a long time. </TD>
                                    </TR>
                                </TABLE>
                            </TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <CENTER>
                        <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <FORM ACTION=?subtopic=lostaccount METHOD=post>
                                <TR>
                                    <TD><INPUT TYPE=image NAME="Back" ALT="Back" SRC="'.$layout_name.'/images/global/buttons/sbutton_back.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                                </TR>
                            </FORM>
                        </TABLE>
                    </CENTER>';
            }
        }
        if($_REQUEST['step'] == "both") {
            
            $character = trim(stripslashes($_POST['character']));
            $main_content .= '
                Please follow the instructions below to get a new password and to receive your account name via email.
                <OL>
                    <LI>Choose "Yes, send it by email" if you still have access to the email account to which your Tibia account is assigned.</LI>
                    <LI>Enter the email address to which your Tibia account is assigned in the field "Account email address".</LI>
                    <LI>Click on "Submit".</LI>
                    <LI>Please understand that for security reasons you can only request both your account name and new password if your account has not been used for a certain period of time. If this requirement is met, you will receive an email with your account name, a link and a confirmation key. Click on the given link, or copy and paste it into your internet browser. If your account has been used recently, the Lost Account Interface will tell you how long you have to wait before you can request your account data. However, if you have a registered account, you can have new account data sent to you instantly if you confirm your request by using your recovery key.</LI>
                    <LI>The link will take you to a page on which you will be asked to enter your account name and to confirm the request by using the confirmation key. Please note that you need to use this link in the following 24 hours. Otherwise the confirmation key will become invalid and you will have to request a new confirmation key.</LI>
                    <LI>If you have entered correct data, you will receive another email with a new password for your Tibia account. In case you do not receive the new password you have to make another request.</LI>
                </OL>
                <FORM ACTION="?subtopic=lostaccount" METHOD=post>
                    <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'">
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Request Account Name and New Password</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1"><INPUT TYPE=radio NAME="step" VALUE="sendboth" CHECKED>
                                Yes, send it by email.<BR>
                                <TABLE CELLSPACING=0 CELLPADDING=1 BORDER=0 ALIGN=center>
                                    <TR>
                                        <TD>Account email address:</TD>
                                        <TD><INPUT NAME="email" VALUE="" SIZE=30 MAXLENGTH=50></TD>
                                    </TR>
                                </TABLE>
                                <BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I have lost access to that email account.<BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I do not know that email address anymore.<BR></TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                    <TR>
                        <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                        <TD ALIGN=center><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <TR>
                                <TD><INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/global/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                            </TR>
                        </FORM>
                    </TABLE>
                </TD>
                <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
            </TR>
        </TABLE>';
        }
        if($_REQUEST['step'] == "name") {
            $character = trim(stripslashes($_POST['character']));
            $main_content .= '
                Please follow the instructions below to receive your account name via email.
                <OL>
                    <LI>Choose "Yes, send it by email" if you still have access to the email account to which your Tibia account is assigned.</LI>
                    <LI>Enter the email address to which your Tibia account is assigned in the field "Account email address".</LI>
                    <LI>Enter the password of your Tibia account in the field "Password".</LI>
                    <LI>Click on "Submit".</LI>
                    <LI>Within a short time you will receive an email with your account name.</LI>
                </OL>
                <FORM ACTION="?subtopic=lostaccount" METHOD=post>
                    <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'">
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Request Account Name</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1"><INPUT TYPE=radio NAME="step" VALUE="sendname" CHECKED>
                                Yes, send it by email.<BR>
                                <TABLE CELLSPACING=0 CELLPADDING=1 BORDER=0 ALIGN=center>
                                    <TR>
                                        <TD>Account email address:</TD>
                                        <TD><INPUT NAME="email" VALUE="" SIZE=30 MAXLENGTH=50></TD>
                                    </TR>
                                    <TR>
                                        <TD>Password:</TD>
                                        <TD><INPUT TYPE="password" NAME="password" VALUE="" SIZE=30 MAXLENGTH=30></TD>
                                    </TR>
                                </TABLE>
                                <BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I have lost access to that email account.<BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I do not know that email address anymore.<BR>
                                <INPUT TYPE=radio NAME="step" VALUE="both">
                                I have also forgotten the password of my account.<BR></TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                    <TR>
                        <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                        <TD ALIGN=center><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <TR>
                                <TD><INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/global/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                            </TR>
                        </FORM>
                    </TABLE>
                </TD>
                <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
            </TR>
        </TABLE>';
        }
        if($_REQUEST['step'] == "password") {
            $character = trim(stripslashes($_POST['character']));
            $main_content .= '
                Please follow the instructions below to get a new password via email.
                <OL>
                    <LI>Choose "Yes, send it by email" if you still have access to the email account to which your Tibia account is assigned.</LI>
                    <LI>Enter the email address to which your Tibia account is assigned in the field "Account email address".</LI>
                    <LI>Enter your account name in the field "Account name".</LI>
                    <LI>Click on "Submit".</LI>
                    <LI>Within a short time you will receive an email with a link and a confirmation key. Click on the given link, or copy and paste it into your internet browser.</LI>
                    <LI>The link will take you to a page on which you will be asked to enter your account name and to confirm the request by using the confirmation key. Please note that you need to use this link in the following 24 hours. Otherwise the confirmation key will become invalid and you will have to request a new confirmation key.</LI>
                    <LI>If you have entered correct data, you will receive another email with a new password for your Tibia account. In case you do not receive the new password you have to make another request.</LI>
                </OL>
                <FORM ACTION="?subtopic=lostaccount" METHOD=post>
                    <INPUT TYPE=hidden NAME="character" VALUE="'.$character.'">
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Request New Password</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1"><INPUT TYPE=radio NAME="step" VALUE="sendconfirmation" CHECKED>
                                Yes, send it by email.<BR>
                                <TABLE CELLSPACING=0 CELLPADDING=1 BORDER=0 ALIGN=center>
                                    <TR>
                                        <TD>Account email address:</TD>
                                        <TD><INPUT NAME="email" VALUE="" SIZE=30 MAXLENGTH=50></TD>
                                    </TR>
                                    <TR>
                                        <TD>Account name:</TD>
                                        <TD><INPUT TYPE="password" NAME="accountname" VALUE="" SIZE=30 MAXLENGTH=30></TD>
                                    </TR>
                                </TABLE>
                                <BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I have lost access to that email account.<BR>
                                <INPUT TYPE=radio NAME="step" VALUE="email">
                                I do not know that email address anymore.<BR>
                                <INPUT TYPE=radio NAME="step" VALUE="both">
                                I have also forgotten my account name.<BR></TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%>
                    <TR>
                        <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
                        <TD ALIGN=center><TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <TR>
                                <TD><INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/global/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                            </TR>
                        </FORM>
                    </TABLE>
                </TD>
                <TD ALIGN=center><IMG SRC="'.$layout_name.'/images/global/general/blank.gif" WIDTH=120 HEIGHT=1 BORDER=0></TD>
            </TR>
        </TABLE>';
        }
        if($_REQUEST['step'] == "sendname") {
            $character = trim(stripslashes($_POST['character']));
            $email = trim(stripslashes($_POST['email']));
            $password = trim(stripslashes($_POST['password']));
            
            $char = new Player();
            $char->find($character);
            $account = new Account();
            $account->loadById($char->getAccountID());

            if(!$account->isValidPassword($password) || $email != $account->getEmail()) {
                $main_content .= '
                    <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%>
                        <TR>
                            <TD BGCOLOR="#505050" CLASS=white><B>Error</B></TD>
                        </TR>
                        <TR>
                            <TD BGCOLOR="#D4C0A1"><TABLE>
                                    <TR>
                                        <TD>Incorrect account name or email address.</TD>
                                    </TR>
                                </TABLE>
                            </TD>
                        </TR>
                    </TABLE>
                    <BR>
                    <CENTER>
                        <TABLE BORDER=0 CELLSPACING=0 CELLPADDING=0>
                            <FORM ACTION=?subtopic=lostaccount METHOD=post>
                                <TR>
                                    <TD><INPUT TYPE=hidden NAME=step VALUE=name>
                                        <INPUT TYPE=hidden NAME=character VALUE="'.$character.'">
                                        <INPUT TYPE=hidden NAME=email VALUE="'.$email.'">
                                        <INPUT TYPE=hidden NAME=password VALUE="'.$password.'">
                                        <INPUT TYPE=image NAME="Back" ALT="Back" SRC="'.$layout_name.'/images/global/buttons/sbutton_back.gif" BORDER=0 WIDTH=120 HEIGHT=18></TD>
                                </TR>
                            </FORM>
                        </TABLE>
                    </CENTER>';
            }else{
                
                $mailBody = '
                    <html>
                        <body>
                            <p>Dear '.$config['server']['serverName'].' player,</p>
                            <p>You have requested the account name of your ' .$config['server']['serverName']. ' account.<br />
                            The account name is:<br /> 
                            '.$account->getName().'</p>
                                
                            <p>Kind regards,<br />
                            Your ' .$config['server']['serverName']. ' Team</p>
                        </body>
                    </html>


Em relação ao config.php, encontra-se assim:

 

# Emails Config
$config['site']['send_emails'] = true;
$config['site']['mail_address'] = "meu_e-mail@gmail.com";
$config['site']['mail_senderName'] = "Suporte Furia-OT";
$config['site']['smtp_enabled'] = true;
$config['site']['smtp_host'] = "smtp.gmail.com";
$config['site']['smtp_port'] = 587;
$config['site']['smtp_auth'] = true;
$config['site']['smtp_user'] = "meu_e-mail@gmail.com";
$config['site']['smtp_pass'] = "minhasenhadee-mail";
$config['site']['smtp_secure'] = true;

Estou tentando de várias formas faze-lo funcionar. Porém, não acontece nada ou simplesmente retorna com "body text empty" ou simplesmente e-mail incorreto ou conta e/ou contate o administrador.

 

Desde já, agradeço.

 

Editado por gabrielmontes
Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

×
×
  • Criar Novo...