Ir para conteúdo
  • Cadastre-se

Website Erro ao registrar novas contas


Posts Recomendados

Diga em poucas palavras a base utilizada (Nome do servidor ou nome do website).

Ex.gesior AAC

Base: 

Site 10.98

 

Qual erro está surgindo/O que você procura?

Saudações! Estou com um problemão envolvendo meu createaccount.php, ele não registra novas contas na DB nem conectando no DNS nem no LOCALHOST. Pensei que poderia ser algum erro de configuração de conexão do website com a DB mas quando logo na conta do admin eu consigo criar novos personagens e tudo mais.

 

Você tem o código disponível? Se tiver publique-o aqui:

<?php
if(!defined('INITIALIZED'))
    exit;
require 'config/namesblocked.php';
if(!$logged) {
    $voc = array(); // Rookgard Active !

    if (isset($_POST['step']) && $_POST['step'] == 'docreate') {
        $erro = array();

        # Nome da conta
        $accountname = isset($_POST['accountname']) ? $_POST['accountname'] : '';

        if ($accountname == '')
            $erro['acc'] = 'Insira sua conta desejada:';
        elseif (strlen($accountname) < 3)
            $erro['acc'] = 'Numero de caracteres muito curto!';
        elseif (strlen($accountname) > 30)
            $erro['acc'] = 'Numero de caracteres muito grande!';
        else {
            $accountname = strtoupper($accountname);

            if (!ctype_alnum($accountname))
                $erro['acc'] = 'This account name has an invalid format. Your account name may only consist of numbers 0-9 and letters A-Z!';
            elseif (!preg_match('/[A-Z0-9]/', $accountname))
                $erro['acc'] = 'Your account name must include at least one letter A-Z!';
            else {
                $acc = new Account($accountname, Account::LOADTYPE_NAME);
                if ($acc->isLoaded())
                    $erro['acc'] = 'This account name is already used. Please select another one!';
            }
        }

        /*# Nome do personagem
        $charactername = isset($_POST['name']) ? trim($_POST['name']) : '';

        if(empty($charactername))
            $erro['name'] = 'Please enter a name for your character!';
        elseif(strlen($charactername) < 2 || strlen($charactername) > 29)
            $erro['name'] = 'A name must have at least 2 but no more than 29 letters!';
        elseif(preg_match('/[^a-zA-Z ]/', $charactername))
            $erro['name'] = 'This name contains invalid letters. Please use only A-Z, a-z and space!';
        elseif(!ctype_upper($charactername[0]))
            $erro['name'] = 'The first letter of a name has to be a capital letter!';
        elseif(strpos($charactername, '  ') !== false)
            $erro['name'] = 'This name contains more than one space between words. Please use only one space between words!';
        else {

            foreach(explode(' ', $charactername) as $k =>$v) {
                $words[$k] = str_split($v);
                $len = strlen($v);
                if($len == 1) {
                    $erro['name'] = 'This name contains a word with only one letter. Please use more than one letter for each word!';
                    break;
                }
                elseif($len > 14) {
                    $erro['name'] = 'This name contains a word that is too long. Please use no more than 14 letters for each word!';
                    break;
                }
            }

            if(!isset($e['name'])) {
                $total = 0;
                foreach($words as $k =>$p) {
                    if(isset($erro['name']))
                        break;
                    $total++;
                    if($total > 3) {
                        $erro['name'] = 'This name contains more than 3 words. Please choose another name!';
                        break;
                    }
                    $len = 0;
                    foreach($p as $i =>$j) {
                        $len++;
                        if($i != 0 && ctype_upper($j)) {
                            $erro['name'] = 'In names capital letters are only allowed at the beginning of a word!';
                            break;
                        }
                        elseif($i == $len-1) {
                            $ff = null;
                            for($h = 0; $h < strlen($v); $h++) {
                                if(in_array(strtolower($v[$h]), array('a','e','i','o','u')) !== false) {
                                    $ff = true;
                                    break;
                                }
                            }
                            if(!$ff) {
                                $erro['name'] = 'This name contains a word without vowels. Please choose another name!';
                                break;
                            }
                        }
                    }
                }
            }

            if(!isset($erro['name'])) {
                $charactername = strtolower($charactername);
                for($i = 0; $i < strlen($charactername); $i++)
                    if($charactername[$i] == $charactername[($i+1)] && $charactername[$i] == $charactername[($i+2)]) {
                        $erro['name'] = 'This character name is already used. Please select another one!';
                        break;
                    }
            }
            if(!isset($erro['name'])) {
                foreach($nomesBloqueados as $v)
                    if(strpos($charactername, $v) !== false) {
                        $erro['name'] = 'This character name can not be used. Please select another one!';
                        break;
                    }
            }
            if(!isset($erro['name'])) {
                $ple = new Player($charactername, Player::LOADTYPE_NAME);
                if($ple->isLoaded())
                    $erro['name'] = 'This character name is already used. Please select another one!';
            }
        }

        if(!isset($_POST['sex']) || ($_POST['sex'] != 'male' && $_POST['sex'] != 'female'))
            $erro['sex'] = 'Please select the sex for your character!';

        if(count($voc) != 0 && (!isset($_POST['vocation']) || !is_numeric($_POST['vocation']) || !isset($voc[$_POST['vocation']])))
            $erro['vocation'] = 'Please select the vocation for your character!';*/

        $email = isset($_POST['email']) ? $_POST['email'] : '';

        if ($email == '')
            $erro['email'] = 'Please enter your email address!';
        elseif (strlen($email) > 49)
            $erro['email'] = 'Your email address is too long!';
        elseif (!filter_var($email, FILTER_VALIDATE_EMAIL))
            $erro['email'] = 'This email address has an invalid format. Please enter a correct email address!';
        else {
            $accMailCheck = new Account($email, Account::LOADTYPE_MAIL);
            if ($accMailCheck->isLoaded())
                $erro['email'] = 'This email address is already used. Please enter another email address!';
        }

        $password1 = isset($_POST['password1']) ? $_POST['password1'] : '';
        $password2 = isset($_POST['password2']) ? $_POST['password2'] : '';

        if (empty($password2))
            $erro['pass'] = 'Please enter the password again!';
        elseif ($password1 != $password2)
            $erro['pass'] = 'The two passwords do not match!';
        else {
            $err = array();
            if (strlen($password1) < 6 || strlen($password1) > 29)
                $err[] = 'The password must have at least 8 and less than 30 letters!';
            if (!ctype_alnum($password1))
                $err[] = 'The password contains invalid letters!';

            if (count($err) != 0) {
                $erro['pass'] = '';
                for ($i = 0; $i < count($err); $i++)
                    $erro['pass'] .= ($i == 0 ? '' : '<br/>') . $err[$i];
            }
        }

        if (!isset($_POST['agreeagreements']) || empty($_POST['agreeagreements']))
            $erro['rules'] = 'You have to agree to the ' . $config['server']['serverName'] . ' Rules in order to create an account!';

        if (count($erro) != 0) {
            $main_content = '<div class="SmallBox"><div class="MessageContainer"><div class="BoxFrameHorizontal" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeLeftTop" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeRightTop" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="ErrorMessage"><div class="BoxFrameVerticalLeft" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-vertical.gif)"/></div><div class="BoxFrameVerticalRight" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-vertical.gif)"/></div><div class="AttentionSign" style="background-image:url(' . $layout_name . '/images/global/content/attentionsign.gif)"/></div><b>The Following Errors Have Occurred:</b><br/>';
            foreach ($erro as $error) $main_content .= $error . '<br/>';
            $main_content .= '</div><div class="BoxFrameHorizontal" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-horizontal.gif)"/></div><div class="BoxFrameEdgeRightBottom" style="background-image:url(' . $layout_name . '/images/global/content/box-frame-edge.gif)"/></div><div class="BoxFrameEdgeLeftBottom" style="background-image:url(' . $layout_name . '/images/content/global/box-frame-edge.gif)"/></div></div></div><br/>';
        } else {
            $reg_account = new Account();
            $reg_account->setName(strtoupper($_POST['accountname']));
            $reg_account->setPassword($_POST['password1']);
            $reg_account->setEMail($_POST['email']);
            $reg_account->setCreateDate(time());
            $reg_account->setCreateIP(Visitor::getIP());
            $reg_account->setFlag(Website::getCountryCode(long2ip(Visitor::getIP())));
            $reg_account->save();

            /*if($reg_account->getID() > 0) {
                $sample = (count($voc) == 0 ? 'Rook' : $voc[$_POST['vocation']]).' Sample';
                $char_to_copy = new Player();
                $char_to_copy->find($sample);
                if(!$char_to_copy->isLoaded())
                    die('Missing sample character ('.$sample.')');
                $char_to_copy->getItems()->load();
                $char_to_copy->setLookType(($_POST['sex'] == 'female' ? 136 : 128));
                $char_to_copy->setID(null); // save as new character
                $char_to_copy->setLastIP(0);
                $char_to_copy->setLastLogin(0);
                $char_to_copy->setLastLogout(0);
                $char_to_copy->setName($_POST['name']);
                $char_to_copy->setAccount($reg_account);
                $char_to_copy->setSex(($_POST['sex'] == 'female' ? 0 : 1));
                $char_to_copy->setPosX(0);
                $char_to_copy->setPosY(0);
                $char_to_copy->setPosZ(0);
                $char_to_copy->setCreateIP(Visitor::getIP());
                $char_to_copy->setCreateDate(time());
                $char_to_copy->setSave(); // make character saveable
                $char_to_copy->save(); // now it will load 'id' of new player
            }*/
            //show information about registration
            if ($config['site']['send_emails']) {
                $reg_name = $reg_account->getName();
                $reg_email = $reg_account->getEMail();
                $mailBody = '<html>
            <body>
            <h3>Your account name and password!</h3>
            <p>You or someone else registred on server <a href="' . $config['server']['url'] . '"><b>' . htmlspecialchars($config['server']['serverName']) . '</b></a> with this e-mail.</p>
            <p>Account name: <b>' . htmlspecialchars($reg_name) . '</b></p>            
            <br />
            <p>After login you can:</p>
            <li>Create new characters
            <li>Change your current password
            <li>Change your current e-mail
            </body>
            </html>

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui.

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.


  • Conteúdo Similar

    • Por Andersontatuador
      .Qual servidor ou website você utiliza como base? 
      Global Full 8.60 + Zao
      Qual o motivo deste tópico? 
      O site não esta adicionando os pontos na conta dos plays.
       
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       



    • Por A.Mokk
      .Qual servidor ou website você utiliza como base? 
      TFS 0.4
      Qual o motivo deste tópico? 
      Estou tendo um probleminha indelicado no meu site, gostaria de obter respostas aqui com voces que sao sempre muito eficientes e praticos.
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
       
    • Por thunmin
      .Qual servidor ou website você utiliza como base? 
      Canary
      Qual o motivo deste tópico? 
      Não consigo deixar ele automatico os players tem que confirmar o pagamento depois eu tenho que verificar se caiu pra depois eu confirmar e colocar as coins
      Está surgindo algum erro? Se sim coloque-o aqui. 
       
      Você tem o código disponível? Se tiver publique-o aqui: 
         
      Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 
       
    • Por Jordan422
      Faala Deuses do Tibia! Estou com um projeto sólido de um global old, mas to preso nessa parte do website viu.. Eu dou meu jeitinho mas ta chegando nas coisas avançadas que precisa daquele freelancer bacana para ajeitar umas páginas para mim! Já tenho as ideias, basta somente botar a mão na massa.. Quem estiver interessado por favor entrar em contato por mensagem aqui no Tibiaking mesmo ou preferencialmente pelo discord mythh9257 
       
    • Por moleza
      Para quem quer abrir um servidor antigo que roda em php5 e está com dificuldade com a configuração do linux, pode contratar um cpanel que contenha o php5 que facilita a configuração do site!!
       
      essa foi a minha solução!
       
      Resolvido !!
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo