LOSTACCOUNT.PHP 2.0 (BR + NO SEND E-MAIL)
Olá amigos, ai vai um arquivo php criado pelo Gesior.pl e totalmente reconfigurado por mim.
• Totalmente em portugûes.
• Não envia e-mail. (ele define uma nova senha se você tiver a RK)
• Configuravel para o tipo de gesior (old gesior e new gesior)
Basta substituir esse código pelo código que esta dentro do arquivo 'lostaccount.php' no seu gesior, configurar a 3ª, 4ª, 5ª e a 154ª linha (bem simples) e pronto!
<?PHP header("Content-Type: text/html; charset=ISO-8859-1",true); #################################### CONFIGURAÇÃO ############################################### $link = '?subtopic=lostaccount'; # url do lostaccount , exemplo: ?subtopic=lostaccount $link2 = '?subtopic=accountmanagement'; # url do acountmanagement , exemplo: ?subtopic=accountmanagement $newplayer = new OTS_Player(); # OLD Gesior = new OTS_Player() / NEW Gesior = new Player() $step = $_REQUEST['step']; # <input type="hidden" name="step" value="x"> ################################## INSERIR NOME DO PERSONAGEM E OPÇÃO DE RECUPERAÇÃO ########################################## if($step == '') { $main_content .= '<B>Bem-vindo a Interface de Conta Perdida!</B><BR><BR> Se você perdeu acesso a sua conta, esta interface pode ajudá-lo. Naturalmente, você precisa provar que sua reivindicação para a conta ser recuperada. Digite os dados solicitados e siga as instruções cuidadosamente. Por favor, compreenda não há maneira de obter acesso a sua conta se ela não é registrada.<br><br> Como um primeiro passo para usar a Interface de Conta perdida, digite o nome de uma personagem da conta perdida, selecione a opção de recuperação e clique em "Submit".<BR><BR>'; $main_content .= '<FORM ACTION="'.$link.'" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE="" /> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Por favor coloque o nome do seu personagem</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <INPUT TYPE=text NAME="nick" VALUE="" autocomplete="off" SIZE="26" MAXLENGTH="25"><BR> </TD></TR> </TABLE><br> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Oque você quer?</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <INPUT TYPE=radio NAME="step" VALUE="reckey" checked> Tenho a chave de recuperação e quero definir uma nova senha para minha conta.<BR> </TD></TR> </TABLE> <BR> <TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE>'; } ################################## INSERIR CHAVE DE RECUPERAÇÃO ########################################## elseif($step == 'reckey') { $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = $newplayer; $account = $newplayer; $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { $main_content .= 'Se você digitar chave de recuperação corretamente, vai ver o formulário para definir uma nova senha para a conta.<BR><br> <FORM ACTION="'.$link.'" METHOD=post> <input type="hidden" name="step" value="newpass"/> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Por favor, coloque sua chave de recuperação.</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"><INPUT TYPE=hidden NAME="nick" VALUE="'.$nick.'" autocomplete="off" MAXLENGTH="25" SIZE="26" readonly="readonly" /> Chave de Recuperação: <INPUT TYPE=text NAME="key" VALUE="" autocomplete="off" MAXLENGTH="10" SIZE="11" /><BR></TD></TR></TABLE> <BR><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18 /></center> </TD></TR></FORM></TABLE></TABLE>'; } else {$main_content .= '<center>A conta deste personagem não tem chave de recuperação!</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } else {$main_content .= '<center>Personagem ou conta do personagem: <b>'.$nick.'</b> não existe.</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } else {$main_content .= '<center>Nome de personagem inválido. Se você tiver outros personagens na conta tente com outro nome.</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } ################################## DEFINIR NOVA SENHA ########################################## elseif($step == 'newpass') { $rec_key = trim($_REQUEST['key']); $nick = stripslashes($_REQUEST['nick']); if(check_name($nick)) { $player = $newplayer; $account = $newplayer; $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { if($account_key == $rec_key) { $main_content .= '<script type="text/javascript"> function validate_required(field,alerttxt) { with (field) { if (value==null||value==""||value==" ") {alert(alerttxt);return false;} else {return true} } } function validate_form(thisform) { with (thisform) { if (verifpass==1) { if (validate_required(passor,"Por favor, defina sua nova senha!")==false) {passor.focus();return false;} if (validate_required(passor2,"Por favor, repita sua nova senha!")==false) {passor2.focus();return false;} if (passor2.value!=passor.value) {alert(\'As senhas não são iguais!\');return false;} } } } </script>'; $main_content .= 'Definir uma nova senha para sua conta.<BR><BR> <FORM ACTION="'.$link.'" onsubmit="return validate_form(this)" METHOD=post> <input type="hidden" name="step" value="changepass"/> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <script type="text/javascript">var verifpass=1;</script> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Por favor defina sua nova senha</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> <INPUT TYPE=hidden NAME="nick" VALUE="'.$nick.'" autocomplete="off" SIZE="26" MAXLENGTH="25" readonly="readonly" /> Nova senha: <INPUT id="passor" TYPE=password NAME="new_pass" VALUE="" autocomplete="off" SIZE="31" MAXLENGTH="30"><BR> Repita a nova senha: <INPUT id="passor2" TYPE=password NAME="new_pass2" VALUE="" autocomplete="off" SIZE="31" MAXLENGTH="30" ><BR> <INPUT TYPE=hidden NAME="key" VALUE="'.$rec_key.'"> </TD></TR></TABLE> <BR><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <INPUT TYPE=image NAME="Submit" ALT="Submit" SRC="'.$layout_name.'/images/buttons/sbutton_submit.gif" BORDER=0 WIDTH=120 HEIGHT=18></center> </TD></TR></FORM></TABLE></TABLE>'; } else {$main_content .= '<center>Chave de recuperação errada.</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } else {$main_content .= '<center>A conta deste personagem não tem chave de recuperação!</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } else {$main_content .= '<center>Personagem ou conta do personagem: <b>'.$nick.'</b> não existe.</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } else {$main_content .= '<center>Nome de personagem inválido. Se você tiver outros personagens na conta tente com outro nome.</center><BR /><TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></TABLE>';} } ################################## SENHA TROCADA! ########################################## elseif($step == 'changepass') { $rec_key = trim($_REQUEST['key']); $nick = stripslashes($_REQUEST['nick']); $new_pass = trim($_POST['new_pass']); if(empty($new_pass)) {$main_content .= 'Por favor, defina sua nova senha.';} if(empty($new_pass2)) {$main_content .= 'Por favor, repita sua nova senha.';} if(check_name($nick)) { $player = $newplayer ; $account = $newplayer ; $player->find($nick); if($player->isLoaded()) $account = $player->getAccount(); if($account->isLoaded()) { $account_key = $account->getCustomField('key'); if(!empty($account_key)) { if($account_key == $rec_key) { if(check_password($new_pass)) { $account->setPassword(password_ency($new_pass)); # OLD Gesior = $account->setPassword (password_ency($new_pass)); / NEW GESIOR = $account->setPassword($new_pass); $account->save(); $main_content .= '<BR> <FORM ACTION="'.$link2.'" onsubmit="return validate_form(this)" METHOD=post> <INPUT TYPE=hidden NAME="character" VALUE=""> <TABLE CELLSPACING=1 CELLPADDING=4 BORDER=0 WIDTH=100%> <TR><TD BGCOLOR="'.$config['site']['vdarkborder'].'" CLASS=white><B>Sua conta e sua nova senha</B></TD></TR> <TR><TD BGCOLOR="'.$config['site']['darkborder'].'"> Sua Conta: <b>'.$account->getName().'</b><BR> Nova senha: <b>'.$new_pass.'</b><BR></TD></TR></TABLE></FORM>'; } else {$main_content .= '<center>Formato de senha errado. Use apenas a-Z, A-Z, 0-9</center><br>';} } else {$main_content .= '<center>Chave de Recuperação errada!</center><br>';} } else {$main_content .= '<center>A conta deste personagem não tem chave de recuperação!</center><br>';} } else {$main_content .= '<center>Personagem ou conta do personagem: <b>'.$nick.'</b> não existe.</center><BR />';} } else {$main_content .= '<center>Nome de personagem inválido. Se você tiver outros personagens na conta tente com outro nome.</center>';} $main_content .= '<TABLE CELLSPACING=0 CELLPADDING=0 BORDER=0 WIDTH=100%><TR><TD><center> <a href="'.$link.'" border="0"><IMG SRC="'.$layout_name.'/images/buttons/sbutton_back.gif" NAME="Back" ALT="Back" BORDER=0 WIDTH=120 HEIGHT=18></a></center> </TD></TR></FORM></TABLE></TABLE>'; } ################################## FIM ########################################## BY LUANLUCIANO ?>
Só isso pessoal, abraços e até mais! Qualquer dúvida manda PM! Ajudei/Gostou REP+