Ir para conteúdo
Banner com Efeitos

Featured Replies

Postado

.Qual servidor ou website você utiliza como base? 

Otpokémon

Qual o motivo deste tópico? 

Erro de PHP

Está surgindo algum erro? Se sim coloque-o aqui. 

Citar

Boa tarde (me perdoem se postei no lugar errado) estou com um erro no Character.php do meu Modern aac. Não é possivel criar uma conta nele, se alguém puder me ajudar ficarei grato. 

Este é o erro: https://prnt.sc/munat9

 

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

1.    <?php
2.    
3.    class Character extends Controller {
4.        function index() {
5.            parent::Controller();
6.        }
7.        
8.        function _characterExists($name) {
9.                $this->load->model("character_model");
10.                if($this->character_model->characterExists($name)) {
11.                    $this->form_validation->set_message('_characterExists', 'This character name already exists, please choose another one!');
12.                    return false;
13.                }
14.                else
15.                    return true;
16.            }
17.        
18.        function _checkCity($id) {
19.            $this->config->load('create_character.php');
20.            if(!array_key_exists($id, $this->config->item('cities'))) {
21.                $this->form_validation->set_message('_checkCity', 'Unknown City');
22.                return false;
23.            }
24.            else
25.                return true;
26.        }
27.        
28.        function _checkWorld($id) {
29.            $this->config->load('create_character.php');
30.            if(!array_key_exists($id, $this->config->item('worlds'))) {
31.                $this->form_validation->set_message('_checkWorld', 'Unknown World');
32.                return false;
33.            }
34.            else
35.                return true;
36.        }
37.        
38.        function _checkVocation($id) {
39.            $this->config->load('create_character.php');
40.            if(!array_key_exists($id, $this->config->item('vocations'))) {
41.                $this->form_validation->set_message('_checkVocation', 'Unknown Vocation');
42.                return false;
43.            }
44.            else
45.                return true;
46.        }
47.        
48.        function _checkSex($id) {
49.            if($id != 0 and $id != 1) {
50.                $this->form_validation->set_message('_checkSex', 'Unknown Sex');
51.                return false;
52.            }
53.            else
54.                return true;
55.        }
56.        
57.        function _checkDelay() {
58.                global $config;
59.                if(!isset($_SESSION['characterDelay'])) $_SESSION['characterDelay'] = 0;
60.                if($config['characterDelay']) {
61.                    if(@(time()-$_SESSION['characterDelay']) > 240) {
62.                        return true;
63.                    }
64.                    else {
65.                        $this->form_validation->set_message('_checkDelay', 'You cannot create another character just after another. Please wait few minutes.');
66.                        return false;
67.                    }
68.                }
69.                else
70.                    return true;
71.            }
72.        
73.        function _validName($name) {
74.            require("config.php");
75.            $name = explode(" ", $name);
76.                foreach($name as $unit) {
77.                    if(in_array(strtolower($unit), $config['invalidNameTags'])) {
78.                        $this->form_validation->set_message('_validName', 'Invalid Name');
79.                        return false;
80.                    }
81.                    else if(strlen($unit) == 1) {
82.                        $this->form_validation->set_message('_validName', 'Invalid Name');
83.                        return false;
84.                    }
85.                    else
86.                        continue;
87.                }
88.        }
89.        
90.        // Function which make the player more real by tatu hunter
91.        // Eg: elder'Druid = Elder'Druid
92.        //       elder'druid = Elder'druid
93.        //     druid theMaster = Druid themaster
94.        function strFirst($name) {
95.            $name = explode(' ', trim($name));
96.            for($i=0, $t = sizeof($name); $i<$t; ++$i)
97.                for($j=0, $l=strlen($name[$i]); $j<$l; ++$j)
98.                    !$j ? 
99.                    ($name[$i][$j] = !$i ? ($name[$i][$j] == strtoupper($name[$i][$j]) ? $name[$i][$j] : strtoupper($name[$i][$j])): $name[$i][$j])  : 
100.                    ($name[$i][$j] = ($name[$i][$j-1] == '\'' ? $name[$i][$j] : 
101.                    strtolower($name[$i][$j])));
102.        
103.            $ret = '';
104.            foreach($name as $k)
105.                $ret .= $k . ' ';
106.        
107.            return trim($ret);
108.        }
109.        
110.        function create_character($ajax = 0) {
111.            require_once("system/application/config/create_character.php");
112.            global $config;
113.            global $ide;
114.            $data['worlds'] = $config['worlds'];
115.            $data['cities'] = $config['cities'];
116.            $data['vocations'] = $config['vocations'];
117.            $this->load->model("character_model");
118.            $count = $this->character_model->getCount();
119.            if($count >= $config['maxCharacters'] && $ajax == 1) exit;
120.            if($count >= $config['maxCharacters']) $ide->redirect(WEBSITE."/index.php/account/index/3");
121.            $this->load->helper('form');
122.            $this->load->library('form_validation');
123.            if($_POST) {
124.                $_POST['name'] = trim(ucwords(strtolower(decodeString($_POST['name']))));
125.                $this->form_validation->set_rules('name', 'Player Name', "required|min_length[3]|max_length[20]|nickname|callback__characterExists|callback__validName|callback__checkDelay");
126.                $this->form_validation->set_rules('city', 'City', 'required|integer|callback__checkCity');
127.                $this->form_validation->set_rules('world', 'World', 'required|integer|callback__checkWorld');
128.                $this->form_validation->set_rules('vocation', 'Vocation', 'required|integer|callback__checkVocation');
129.                $this->form_validation->set_rules('sex', 'Sex', 'required|integer|callback__checkSex');
130.                    
131.                if($this->form_validation->run() == true) {
132.                    $ide = new IDE;
133.                    $char_to_copy_name = $config['newchar_vocations'][$_POST['world']][$_POST['vocation']];
134.                    $ots = POT::getInstance();
135.                    $ots->connect(POT::DB_MYSQL, connection());
136.                    $char_to_copy = new OTS_Player();
137.                    $char_to_copy->find($char_to_copy_name);
138.                    $this->load->model("character_model");
139.                    /* This code (Most of it actually) has been taken from Gesior AAC. */
140.                    $account_logged = $ots->createObject('Account');
141.                    $account_logged->load($this->character_model->getAccountID());
142.                    if(!$char_to_copy->isLoaded()) {    show_error('Sample character could not be found!'); }
143.                    if($_POST['sex'] == "0")
144.                    $char_to_copy->setLookType(136);
145.                    $player = $ots->createObject('Player');
146.                    $player->setName($this->strFirst($_POST['name']));
147.                    $player->setAccount($account_logged);
148.                    $player->setWorld($_POST['world']);
149.                    $player->setGroup($char_to_copy->getGroup());
150.                    $player->setSex($_POST['sex']);
151.                    $player->setVocation($char_to_copy->getVocation());
152.                    $player->setConditions($char_to_copy->getConditions());
153.                    $player->setRank($char_to_copy->getRank());
154.                    $player->setLookAddons($char_to_copy->getLookAddons());
155.                    $player->setTownId($_POST['city']);
156.                    $player->setExperience($char_to_copy->getExperience());
157.                    $player->setLevel($char_to_copy->getLevel());
158.                    $player->setMagLevel($char_to_copy->getMagLevel());
159.                    $player->setHealth($char_to_copy->getHealth());
160.                    $player->setHealthMax($char_to_copy->getHealthMax());
161.                    $player->setMana($char_to_copy->getMana());
162.                    $player->setManaMax($char_to_copy->getManaMax());
163.                    $player->setManaSpent($char_to_copy->getManaSpent());
164.                    $player->setSoul($char_to_copy->getSoul());
165.                    $player->setDirection($char_to_copy->getDirection());
166.                    $player->setLookBody($char_to_copy->getLookBody());
167.                    $player->setLookFeet($char_to_copy->getLookFeet());
168.                    $player->setLookHead($char_to_copy->getLookHead());
169.                    $player->setLookLegs($char_to_copy->getLookLegs());
170.                    $player->setLookType($char_to_copy->getLookType());
171.                    $player->setCap($char_to_copy->getCap());
172.                    $player->setPosX($startPos['x']);
173.                    $player->setPosY($startPos['y']);
174.                    $player->setPosZ($startPos['z']);
175.                    $player->setLossExperience($char_to_copy->getLossExperience());
176.                    $player->setLossMana($char_to_copy->getLossMana());
177.                    $player->setLossSkills($char_to_copy->getLossSkills());
178.                    $player->setLossItems($char_to_copy->getLossItems());
179.                    $player->setLossContainers($char_to_copy->getLossContainers());
180.                    $player->save();
181.                    $_SESSION['characterDelay'] = time();
182.                    unset($player);
183.                    $player = $ots->createObject('Player');
184.                    $player->find($_POST['name']);
185.                    if($player->isLoaded())
186.                    {
187.                        $player->setCustomField('world_id', (int) $_POST['world']);
188.                        $player->setSkill(0,$char_to_copy->getSkill(0));
189.                        $player->setSkill(1,$char_to_copy->getSkill(1));
190.                        $player->setSkill(2,$char_to_copy->getSkill(2));
191.                        $player->setSkill(3,$char_to_copy->getSkill(3));
192.                        $player->setSkill(4,$char_to_copy->getSkill(4));
193.                        $player->setSkill(5,$char_to_copy->getSkill(5));
194.                        $player->setSkill(6,$char_to_copy->getSkill(6));
195.                        $player->save();
196.                        $SQL = POT::getInstance()->getDBHandle();
197.                        $loaded_items_to_copy = $SQL->query("SELECT * FROM player_items WHERE player_id = ".$char_to_copy->getId()."");
198.                        foreach($loaded_items_to_copy as $save_item)
199.                            $SQL->query("INSERT INTO `player_items` (`player_id` ,`pid` ,`sid` ,`itemtype`, `count`, `attributes`) VALUES ('".$player->getId()."', '".$save_item['pid']."', '".$save_item['sid']."', '".$save_item['itemtype']."', '".$save_item['count']."', '".$save_item['attributes']."');");
200.                            
201.                        if($ajax == 0)
202.                            $ide->redirect(WEBSITE.'/index.php/account/index/1');
203.                        else
204.                            $ide->criticalRedirect(WEBSITE.'/index.php/account/index/1');
205.                    }
206.                }
207.            }
208.            if($ajax == 1) {
209.                error(validation_errors());
210.                $ide->system_stop();
211.            }
212.            else
213.                $this->load->view('create_character', $data);
214.        }
215.        
216.        public function view($name = null) {
217.            global $config;
218.            if(!@is_array($_SESSION['sCharacters']))
219.                $_SESSION['sCharacters'] = array();
220.            $ide = new IDE;
221.            if(!empty($name)) {
222.                $name = decodeString($name);
223.                $data['character'] = $name;
224.                $ots = POT::getInstance();
225.                $ots->connect(POT::DB_MYSQL, connection());
226.                $player = $ots->createObject('Player');
227.                $player->find($name);
228.                if(!$player->isLoaded()) {
229.                    $ide->redirect("../../character/view/");
230.                }
231.                else {
232.                    if(!in_multiarray($name, $_SESSION['sCharacters'])) {
233.                        array_unshift($_SESSION['sCharacters'], array("name"=>$name, "time"=>time()));
234.                        if(count($_SESSION['sCharacters']) > $config['characterSearchLimit'])
235.                            array_pop($_SESSION['sCharacters']);
236.                    }
237.                    
238.                    $data['player'] = $player;
239.                    $data['account'] = $player->getAccount();
240.                }
241.                $this->load->view('view_character.php', $data);
242.            }
243.            else {
244.                $this->load->helper("form");
245.                    if($_POST) {
246.                        $name = decodeString($_POST['name']);
247.                        $ots = POT::getInstance();
248.                        $ots->connect(POT::DB_MYSQL, connection());
249.                        $player = new OTS_Player();
250.                        $player->find($name);
251.                        if($player->isLoaded()) {
252.                            $ide->redirect("../character/view/$name");
253.                        }
254.                        else {
255.                            error("$name could not be found.");
256.                        }
257.                        
258.                    }
259.                $this->load->view('character_search.php');
260.            }
261.        
262.        }
263.        
264.        public function online() {
265.            $this->load->helper('form');
266.            $this->load->model("character_model");
267.            $data['players'] = $this->character_model->getPlayersOnline();
268.            $this->load->view("online_players.php", $data);
269.        }
270.        
271.        public function clearHistory() {
272.                global $ide;
273.                $_SESSION['sCharacters'] = array();
274.                    echo "History Cleared!";
275.                $ide->system_stop();
276.            }
277.    }
278.    
279.    ?>

 

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

 

Editado por joao marcos domician (veja o histórico de edições)

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

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 519.7k

Informação Importante

Confirmação de Termo