Jump to content

Ramosinfo

Members
  • Content count

    11
  • Joined

  • Last visited

Community Reputation

0 Comum

About Ramosinfo

  1. Até ontem, domingo, meu checkout com o PagSeguro funcionava perfeitamente. Hoje, no entanto, dá a mensagem "Código de checkout inválido.". A única coisa que alterei, foi minha tabela de compras, onde acrescentei campos novos e buscar novos dados para esta mesma tabela. Como deu este erro, mudei também meu API-KEY por via das dúvidas. Vou dar um passo a passo do meu processo: Para chamar o checkout, tenho: <script type="text/javascript" src="node_modules/jquery/dist/jquery.js"></script> <script> function enviaPagseguro() { $.post('pagseguro.php', '', function(data) { $('#code').val(data); $('#comprar').submit(); }) } </script> No inicio de meu formulário de checkout que o chama em um botão no final: <button onclick="enviaPagseguro()" class="btn btn-primary" role="button">Comprar</button> </div> <form id="comprar" action="https://sandbox.pagseguro.uol.com.br/v2/checkout/payment.html" method="post" onsubmit="PagSeguroLightbox(this { success : function(transactionCode) { alert('success - ' + transactionCode); document.write('<b>Estamos processando o seu pedido.</b><br>'); document.write('<b>Seu código de transação é:</b> ' + transactionCode); }, abort : function() { alert('abort'); document.write('<b>Você não concluiu a sua compra</b>'); } }); return false;"> <input type="hidden" name="code" id="code" value="" /> </form> <script type="text/javascript" src="https://stc.sandbox.pagseguro.uol.com.br/pagseguro/api/v2/checkout/pagseguro.lightbox.js"> </script> Este PagSeguro.php é onde salvo os dados do pedido do checkout em "compras" e faço a chamada ao Pagseguro: <?php session_start(); require 'conexao.php'; echo '<script>alert("chamou o pagseguro PHP.")</script>'; if(!$_SESSION['fantasia']): echo '<script> window.location="login.php" </script>'; endif; $cod_fornecedor = $_SESSION['cod_fornecedor']; $fantasia = $_SESSION['fantasia']; $email = $_SESSION['email']; $logradouro = $_SESSION['logradourro']; $numero = $_SESSION['numero']; $cep = $_SESSION['cep']; $complemento = $_SESSION['complemento']; $bairro = $_SESSION['bairro']; $cidade = $_SESSION['cidade']; $cpf = $_SESSION['CPF']; $name_plano = $_SESSION['name']; $preco = $_SESSION['price']; $celular = $_SESSION['celular']; $creditos = $_SESSION['qty_credit']; $status = '1'; $meio_pgt = 'PagSeguro'; $idplans = $_SESSION['idplans']; $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $inserir = $pdo->prepare("INSERT INTO compras (cod_fornecedor, fantasia, email, cpf, cep, logradouro, numero, complemenyo, bairro, cidade_estado, plano, valor, celular, qtd_credito, status, meio_pagamento) VALUES ('$cod_fornecedor', '$fantasia', '$email', '$cpf', '$cep', '$logradouro', '$numero', '$complemento', '$bairro', '$cidade', '$name_plano', '$preco', '$celular', '$creditos', '$status', '$meio_pgt')"); $inserir->execute(); $idpedido = $pdo->lastInsertId(); if($inserir): $data['token'] ='MEU_TOKEN'; $data['email'] = 'MEU_EMAIL'; $data['currency'] = 'BRL'; $data['itemId1'] = '1'; $data['itemQuantity1'] = '1'; $data['itemDescription1'] = $name_plano; $data['itemAmount1'] = $preco; $data['reference'] = $idpedido; $url = 'https://ws.sandbox.pagseguro.uol.com.br/v2/checkout'; $data = http_build_query($data); $curl = curl_init($url); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, $data); curl_setopt($curl, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); $xml= curl_exec($curl); curl_close($curl); $xml= simplexml_load_string($xml); echo $xml -> code; else: echo '<script>alert("Nada Pronto.")</script>'; endif; ?> Não consigo entender o que está errado, uma vez que funciona perfeito, até ontem. E neste último, ele insere todos os dados corretamente, só quando chamo o PagSeguro com $data não vai mais... Olhem pela URL, conforme a documentação(A documentação é esta: https://dev.pagseguro.uol.com.br/documentacao/pagamento-online/pagamentos/pagamento-padrao), o resultado:
  2. Ramosinfo

    Erro: Call to a member function fetchAll() on a non-object in

    Oi Allex, Coloquei $check->fetch(); e continua o mesmo erro...
  3. Estou criando uma API com o código a seguir, mas dá a mensagem no PHP de: "<br /> <b>Fatal error</b>: Call to a member function execute() on a non-object in <b>/home/u649998054/public_html/checkToken.php</b> on line <b>13</b><br />" A linha 13 é o $check = $check->fetchAll(); E no meu App surge a mensagem: "ionic.bundle.js:26794 SyntaxError: Unexpected token < in JSON at position 0 at Object.parse (native) at fromJson" O que posso estar fazendo de errado? <?php header('Access-Control-Allow-Origin: *'); header("Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept"); header('Access-Control-Allow-Origin: http://localhost:8100'); include('connection.php'); $data = json_decode(file_get_contents("php://input")); $token = $data->token; $check = $db->query("SELECT * FROM usuario_app WHERE token=$token"); $check = $check->fetchAll(); if (count($check) == 1){ echo "authorized"; } else { echo "unauthorized"; } ?>
  4. Ramosinfo

    Selecionar mais de 3 tabelas

    Bom dia pessoal, Sempre fiz select de 2 ou 3 tabelas, mas agora preciso fazer select com várias condições de 8 tabelas. Tentei INNER JOIN, RIGHT OUTER JOIN, etc. E me lista apenas 1 ou quando uma única tabela está vazia me lista nada. Gostaria de alguma sugestão. Segue meu SQL completo: E o resultado repetido e não de todos os fornecedores... SELECT fornecedores.cod_fornecedor, fornecedores.razao_social, fornecedores.fantasia, fornecedores.cnpj, fornecedores.ie, fornecedores.email, fornecedores.cep, fornecedores.logradourro, fornecedores.complemento, fornecedores.cidade, fornecedores.estado, fornecedores.responsavel_contato, fornecedores.telefone_empresa, fornecedores.telefone_responsavel, fornecedores.celular, fornecedores.qtd_entregadores, fornecedores.data_fundacao, fornecedores.senha, fornecedores.data_hora_cadastro, fornecedores.bairro, fornecedores.numero, fornecedor_visual.cod_fornecedor_visual, fornecedor_visual.cod_fornecedor, fornecedor_visual.descricao_empresa, fornecedor_visual.site, fornecedor_visual.facebook, fornecedor_visual.twitter, fornecedor_visual.instagram, fornecedor_visual.youtube, fornecedor_visual.localizacao_mapa, fornecedor_visual.logomarca, fornecedor_visual.foto1, fornecedor_visual.foto2, fornecedor_visual.foto3, fornecedor_visual.foto4, fornecedor_visual.data_cadastro, fornecedor_visual.latitude, fornecedor_visual.longitude, fornecedor_tipo_entrega.cod_fornecedor_tipo_entrega, fornecedor_tipo_entrega.cod_fornecedor, fornecedor_tipo_entrega.descricao, fornecedor_tipo_entrega.valor, fornecedor_tipo_entrega.data_cadastro, fornecedor_funcionamento.cod_forn_funcionamento, fornecedor_funcionamento.cod_fornecedor, fornecedor_funcionamento.aberto_dias, fornecedor_funcionamento.hora_inicio, fornecedor_funcionamento.hora_fim, fornecedor_funcionamento.data_cadastro, fornecedor_configura_frete.cod_configura_frete, fornecedor_configura_frete.cod_fornecedor, fornecedor_configura_frete.tem_delivery, fornecedor_configura_frete.custo_padrao, fornecedor_configura_frete.frete_gratis, fornecedor_configura_frete.valor_minimo_frete_gratis, fornecedor_configura_frete.tipos_pagamentos, fornecedor_configura_frete.prazo_entrega_min, fornecedor_configura_frete.prazo_entrega_max, fornecedor_configura_frete.agenda_comida, fornecedor_credito.cod_fornecedor_codigo, fornecedor_credito.cod_fornecedor, fornecedor_credito.qtd_credito FROM fornecedores INNER JOIN fornecedor_credito ON fornecedores.cod_fornecedor = fornecedor_credito.cod_fornecedor RIGHT OUTER JOIN fornecedor_visual ON fornecedores.cod_fornecedor = fornecedor_visual.cod_fornecedor RIGHT OUTER JOIN fornecedor_tipo_entrega ON fornecedores.cod_fornecedor = fornecedor_tipo_entrega.cod_fornecedor RIGHT OUTER JOIN fornecedor_funcionamento ON fornecedores.cod_fornecedor = fornecedor_funcionamento.cod_fornecedor RIGHT OUTER JOIN fornecedor_configura_frete ON fornecedores.cod_fornecedor = fornecedor_configura_frete.cod_fornecedor WHERE (fornecedor_credito.qtd_credito >= '1') ORDER BY fornecedores.fantasia
  5. Ramosinfo

    SQL em PHP que não retorna dados

    Bom dia pessoal, Estou criando um PHP para dar acesso aos dados de meu aplicativo Web para celular. Mas a instrução SQL não está me retornando nenhuma informação. Gostaria de orientação... Segue o código completo: <?php /** CONFIG:START **/ $config["host"] = "aqui o host" ; //host $config["user"] = "ramosinfo" ; //Username SQL $config["pass"] = "senha" ; //Password SQL $config["dbase"] = "banco" ; //Database $config["port"] = "3306" ; //Database $config["limit"] = 500 ; //limit row $config["abs_url_images"] = "http://your-web/" ; //Absolute Images URL $config["abs_url_videos"] = "http://your-web/" ; //Absolute Videos URL $config["abs_url_audios"] = "http://your-web/" ; //Absolute Audio URL /** CONFIG:END **/ $rest_api = array(); function utf8ize($d) { if (is_array($d)) { foreach ($d as $k => $v) { $d[$k] = utf8ize($v); } } else if (is_string ($d)) { return utf8_encode($d); } return $d; } /** connect to mysql **/ $mysql = new mysqli($config["host"], $config["user"], $config["pass"], $config["dbase"], $config["port"]); if (mysqli_connect_errno()){ die(mysqli_connect_error()); } echo $mysql; if(!isset($_GET["json"])){ $_GET["json"]= "route"; } switch($_GET["json"]){ case "restaurantes": $sql = "SELECT fornecedores.cod_fornecedor, fornecedores.razao_social, fornecedores.fantasia, fornecedores.cnpj, fornecedores.ie, fornecedores.email, fornecedores.cep, fornecedores.logradourro, fornecedores.complemento, fornecedores.cidade, fornecedores.estado, fornecedores.responsavel_contato, fornecedores.telefone_empresa, fornecedores.telefone_responsavel, fornecedores.celular, fornecedores.qtd_entregadores, fornecedores.data_fundacao, fornecedores.senha, fornecedores.data_hora_cadastro, fornecedores.bairro, fornecedores.numero, fornecedor_visual.cod_fornecedor_visual, fornecedor_visual.cod_fornecedor, fornecedor_visual.descricao_empresa, fornecedor_visual.site, fornecedor_visual.facebook, fornecedor_visual.twitter, fornecedor_visual.instagram, fornecedor_visual.youtube, fornecedor_visual.localizacao_mapa, fornecedor_visual.logomarca, fornecedor_visual.foto1, fornecedor_visual.foto2, fornecedor_visual.foto3, fornecedor_visual.foto4, fornecedor_visual.data_cadastro, fornecedor_visual.latitude, fornecedor_visual.longitude, fornecedores.cod_fornecedor, fornecedores.razao_social, fornecedores.fantasia, fornecedores.cnpj, fornecedores.ie, fornecedores.email, fornecedores.cep, fornecedores.logradourro, fornecedores.complemento, fornecedores.cidade, fornecedores.estado, fornecedores.responsavel_contato, fornecedores.telefone_empresa, fornecedores.telefone_responsavel, fornecedores.celular, fornecedores.qtd_entregadores, fornecedores.data_fundacao, fornecedores.senha, fornecedores.data_hora_cadastro, fornecedores.bairro, fornecedores.numero, fornecedor_visual.cod_fornecedor_visual, fornecedor_visual.cod_fornecedor, fornecedor_visual.descricao_empresa, fornecedor_visual.site, fornecedor_visual.facebook, fornecedor_visual.twitter, fornecedor_visual.instagram, fornecedor_visual.youtube, fornecedor_visual.localizacao_mapa, fornecedor_visual.logomarca, fornecedor_visual.foto1, fornecedor_visual.foto2, fornecedor_visual.foto3, fornecedor_visual.foto4, fornecedor_visual.data_cadastro, fornecedor_visual.latitude, fornecedor_visual.longitude, fornecedor_tipo_entrega.cod_fornecedor_tipo_entrega, fornecedor_tipo_entrega.cod_fornecedor, fornecedor_tipo_entrega.descricao, fornecedor_tipo_entrega.valor, fornecedor_tipo_entrega.data_cadastro, fornecedor_funcionamento.cod_forn_funcionamento, fornecedor_funcionamento.cod_fornecedor, fornecedor_funcionamento.aberto_dias, fornecedor_funcionamento.hora_inicio, fornecedor_funcionamento.hora_fim, fornecedor_funcionamento.data_cadastro, fornecedor_credito.cod_fornecedor_codigo, fornecedor_credito.cod_fornecedor, fornecedor_credito.qtd_credito, fornecedor_configura_frete.cod_configura_frete, fornecedor_configura_frete.cod_fornecedor, fornecedor_configura_frete.tem_delivery, fornecedor_configura_frete.custo_padrao, fornecedor_configura_frete.frete_gratis, fornecedor_configura_frete.valor_minimo_frete_gratis, fornecedor_configura_frete.tipos_pagamentos, fornecedor_configura_frete.prazo_entrega_min, fornecedor_configura_frete.prazo_entrega_max, fornecedor_configura_frete.agenda_comida, forn_avalia_replica.cod_replica, forn_avalia_replica.cod_avaliacao, forn_avalia_replica.cod_fornecedor, forn_avalia_replica.cod_cliente, forn_avalia_replica.repply, forn_avalia_replica.data_repply, forn_avaliacao_user.cod_avaliacao, forn_avaliacao_user.cod_cliente, forn_avaliacao_user.cod_fornecedor, forn_avaliacao_user.stars_prato, forn_avaliacao_user.comments, forn_avaliacao_user.data_avaliacao, forn_avaliacao_user.stars_entrega, forn_avaliacao_user.stars_atendimento FROM fornecedores INNER JOIN fornecedor_visual ON fornecedores.cod_fornecedor = fornecedor_visual.cod_fornecedor INNER JOIN fornecedor_tipo_entrega ON fornecedores.cod_fornecedor = fornecedor_tipo_entrega.cod_fornecedor INNER JOIN fornecedor_funcionamento ON fornecedores.cod_fornecedor = fornecedor_funcionamento.cod_fornecedor INNER JOIN fornecedor_credito ON fornecedores.cod_fornecedor = fornecedor_credito.cod_fornecedor INNER JOIN fornecedor_configura_frete ON fornecedores.cod_fornecedor = fornecedor_configura_frete.cod_fornecedor INNER JOIN forn_avalia_replica ON fornecedores.cod_fornecedor = forn_avalia_replica.cod_fornecedor INNER JOIN forn_avaliacao_user ON fornecedores.cod_fornecedor = forn_avaliacao_user.cod_fornecedor WHERE (fornecedor_credito.qtd_credito >= '1') ORDER BY fornecedores.fantasia" ; echo "Teste"; echo $sql; if($result = $mysql->query($sql)){ $z=0; while ($data = $result->fetch_array()){ $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; # id $abs_url_images = $config['abs_url_images'].'/'; $abs_url_videos = $config['abs_url_videos'].'/'; $abs_url_audios = $config['abs_url_audios'].'/'; if((substr($data['logomarca'], 0, 7)=='http://')||(substr($data['logomarca'], 0, 8)=='https://')){ $abs_url_images = $abs_url_videos = $abs_url_audios = ''; } /** TABELA FORNECEDORES **/ $rest_api[$z]['bairro'] = $data['bairro']; $rest_api[$z]['celular'] = $data['celular']; $rest_api[$z]['cep'] = $data['cep']; $rest_api[$z]['cidade'] = $data['cidade']; $rest_api[$z]['cnpj'] = $data['cnpj']; $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['complemento'] = $data['complemento']; $rest_api[$z]['data_fundacao'] = $data['data_fundacao']; $rest_api[$z]['data_hora_cadastro'] = $data['data_hora_cadastro']; $rest_api[$z]['email'] = $data['email']; $rest_api[$z]['estado'] = $data['estado']; $rest_api[$z]['fantasia'] = $data['fantasia']; $rest_api[$z]['ie'] = $data['ie']; $rest_api[$z]['logradourro'] = $data['logradourro']; $rest_api[$z]['numero'] = $data['numero']; $rest_api[$z]['qtd_entregadores'] = $data['qtd_entregadores']; $rest_api[$z]['razao_social'] = $data['razao_social']; $rest_api[$z]['responsavel_contato'] = $data['responsavel_contato']; $rest_api[$z]['telefone_empresa'] = $data['telefone_empresa']; $rest_api[$z]['telefone_responsavel'] = $data['telefone_responsavel']; /** TABELA FORNECEDOR_VISUAL **/ $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['cod_fornecedor_visual'] = $data['cod_fornecedor_visual']; $rest_api[$z]['data_cadastro'] = $data['data_cadastro']; $rest_api[$z]['descricao_empresa'] = $data['descricao_empresa']; $rest_api[$z]['facebook'] = $data['facebook']; $rest_api[$z]['foto1'] = $abs_url_images . $data['foto1']; # images $rest_api[$z]['foto2'] = $abs_url_images . $data['foto2']; # images $rest_api[$z]['foto3'] = $abs_url_images . $data['foto3']; # images $rest_api[$z]['foto4'] = $abs_url_images . $data['foto4']; # images $rest_api[$z]['instagram'] = $data['instagram']; $rest_api[$z]['latitude'] = $data['latitude']; $rest_api[$z]['localizacao_mapa'] = $data['localizacao_mapa']; $rest_api[$z]['logomarca'] = $abs_url_images . $data['logomarca']; # images $rest_api[$z]['longitude'] = $data['longitude']; $rest_api[$z]['site'] = $data['site']; $rest_api[$z]['twitter'] = $data['twitter']; $rest_api[$z]['youtube'] = $data['youtube']; /** TABELA FORNECEDOR_TIPO_ENTREGA **/ $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['cod_fornecedor_tipo_entrega'] = $data['cod_fornecedor_tipo_entrega']; $rest_api[$z]['data_cadastro'] = $data['data_cadastro']; $rest_api[$z]['descricao'] = $data['descricao']; $rest_api[$z]['valor'] = $data['valor']; /** TABELA FORNECEDOR_FUNCIONAMENTO **/ $rest_api[$z]['aberto_dias'] = $data['aberto_dias']; $rest_api[$z]['cod_forn_funcionamento'] = $data['cod_forn_funcionamento']; $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['data_cadastro'] = $data['data_cadastro']; $rest_api[$z]['hora_fim'] = $data['hora_fim']; $rest_api[$z]['hora_inicio'] = $data['hora_inicio']; /** TABELA FORNECEDOR_CONFIGURA_FRETE **/ $rest_api[$z]['agenda_comida'] = $data['agenda_comida']; $rest_api[$z]['cod_configura_frete'] = $data['cod_configura_frete']; $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['custo_padrao'] = $data['custo_padrao']; $rest_api[$z]['frete_gratis'] = $data['frete_gratis']; $rest_api[$z]['prazo_entrega_max'] = $data['prazo_entrega_max']; $rest_api[$z]['prazo_entrega_min'] = $data['prazo_entrega_min']; $rest_api[$z]['tem_delivery'] = $data['tem_delivery']; $rest_api[$z]['tipos_pagamentos'] = $data['tipos_pagamentos']; $rest_api[$z]['valor_minimo_frete_gratis'] = $data['valor_minimo_frete_gratis']; /** TABELA FORN_AVALIACAO_USER **/ $rest_api[$z]['cod_avaliacao'] = $data['cod_avaliacao']; $rest_api[$z]['cod_cliente'] = $data['cod_cliente']; $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['comments'] = $data['comments']; $rest_api[$z]['data_avaliacao'] = $data['data_avaliacao']; $rest_api[$z]['stars_atendimento'] = $data['stars_atendimento']; $rest_api[$z]['stars_entrega'] = $data['stars_entrega']; $rest_api[$z]['stars_prato'] = $data['stars_prato']; /** TABELA FORN_AVALIA_REPLICA **/ $rest_api[$z]['cod_avaliacao'] = $data['cod_avaliacao']; $rest_api[$z]['cod_cliente'] = $data['cod_cliente']; $rest_api[$z]['cod_fornecedor'] = $data['cod_fornecedor']; $rest_api[$z]['cod_replica'] = $data['cod_replica']; $rest_api[$z]['data_repply'] = $data['data_repply']; $rest_api[$z]['repply'] = $data['repply']; $abs_url_images = $config['abs_url_images'].'/'; $abs_url_videos = $config['abs_url_videos'].'/'; $abs_url_audios = $config['abs_url_audios'].'/'; if((substr($data['foto1'], 0, 7)=='http://')||(substr($data['foto1'], 0, 8)=='https://')){ $abs_url_images = $abs_url_videos = $abs_url_audios = ''; } $rest_api[$z]['foto1'] = $abs_url_images . $data['foto1']; # images $abs_url_images = $config['abs_url_images'].'/'; $abs_url_videos = $config['abs_url_videos'].'/'; $abs_url_audios = $config['abs_url_audios'].'/'; if((substr($data['foto2'], 0, 7)=='http://')||(substr($data['foto2'], 0, 8)=='https://')){ $abs_url_images = $abs_url_videos = $abs_url_audios = ''; } $rest_api[$z]['foto2'] = $abs_url_images . $data['foto2']; # images $abs_url_images = $config['abs_url_images'].'/'; $abs_url_videos = $config['abs_url_videos'].'/'; $abs_url_audios = $config['abs_url_audios'].'/'; if((substr($data['foto3'], 0, 7)=='http://')||(substr($data['foto3'], 0, 8)=='https://')){ $abs_url_images = $abs_url_videos = $abs_url_audios = ''; } $rest_api[$z]['foto3'] = $abs_url_images . $data['foto3']; # images $abs_url_images = $config['abs_url_images'].'/'; $abs_url_videos = $config['abs_url_videos'].'/'; $abs_url_audios = $config['abs_url_audios'].'/'; if((substr($data['foto4'], 0, 7)=='http://')||(substr($data['foto4'], 0, 8)=='https://')){ $abs_url_images = $abs_url_videos = $abs_url_audios = ''; } $rest_api[$z]['foto4'] = $abs_url_images . $data['foto4']; # images $z++; } $result->close(); } break; case "route": $rest_api["routes"][0]["namespace"] = "promoes"; $rest_api["routes"][0]["methods"][] = "GET"; $rest_api["routes"][0]["_links"]["self"] = $_SERVER["PHP_SELF"]."?json=promoes"; $rest_api["routes"][1]["namespace"] = "restaurantes"; $rest_api["routes"][1]["methods"][] = "GET"; $rest_api["routes"][1]["_links"]["self"] = $_SERVER["PHP_SELF"]."?json=restaurantes"; break; } header('Content-type: application/json'); header('Access-Control-Allow-Origin: *'); header('Access-Control-Allow-Origin: http://localhost:8100'); echo json_encode(utf8ize($rest_api));
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.