Jump to content

Ericsson Berg

Members
  • Content count

    136
  • Joined

  • Last visited

Everything posted by Ericsson Berg

  1. Alguém já passou por isso? Não conseguir enviar informação via post porque os dados são muito grandes?
  2. Boa tarde! Estou com um probleminha e não consigo resolver de forma alguma. Num script onde criptografo os dados e faço o envio da requisição por meio do CURL POST, esta ação funciona até a quantidade de 4.350 caracteres na requisição. Mas quando envio a requisição a partir de 4.499 caracteres é gerado um erro de recebimento no servidor. "You don't have permission to access / ... / on this server." Não tenho acesso ao phpinfo do servidor, então há como resolver este problema pelo .htaccess? Se não, qual configuração do phpinfo devo ajustar para que este erro seja eliminado?
  3. Boa tarde! Estou tentando fazer um programa que irá acessar um site externo(detran) para fazer uma buscar semiautomática. Semiautomática porquê, o usuário irá digitar a placa e renavam de um determinado veículo e com isso abriria a página do detran a qual eu pegaria os campos com as informações do veículo para gravar numa base de dados que será utilizada confins de registro do que foi avaliado. Contudo, eu não consigo de forma alguma acessar o iframe, o seu conteúdo. há restrições para realizar este procedimento? A utilização do frame em sites externos serve somente para a visualização? *Teria que acessa e executar sempre dentro da mesma página carregada para não perder a validação.
  4. Olá galera!! Tô tentando resolver um problemãooo!!! Com o Canvas consegui um dos meus objetivos principais que é transformar uma tabela em imagem, sendo que somente gerando no html, mas como copiar para área de transferência e assim poder colar num documento word, excel, email, etc... Com texto é fácil, mas com imagem não deu jeito mesmo. Alguém tem uma ajuda?
  5. Ericsson Berg

    Somar fórmula em string no DB Mysql

    Olá, blz? Vlw, mas não seria isso não, a questão é realizar um cálculo de uma informação, por exemplo, "((100 * 2) /5)" que está como string. É receber uma string que contém uma fórmula e realizar o cálculo.
  6. Ericsson Berg

    Somar fórmula em string no DB Mysql

    iai Pessoal?!! Preciso de uma ajuda. Como calcular em um select a fórmula "((100 * 2) /5)" que está em string? Seria tipo a função eval do javascript. Procurei na net e em fóruns, mas não achei nada sobre isso. Na verdade consegui com procedure, Call eval("((100 * 2) /5)"), mas tenho uma necessidade de ser no select em forma de function, porque utilizarei o retorno da coluna em vários inserts. Exemplo em Procedure CREATE DEFINER=`hoster`@`%` PROCEDURE `EVAL`(IN `sql_code` text) MODIFIES SQL DATA COMMENT 'evaluates given string as SQL code' BEGIN SET @newformula = sql_code; SET @newformula = concat("SELECT ",@newformula); PREPARE stmt1 FROM @newformula; EXECUTE stmt1 ; DEALLOCATE PREPARE stmt1; END E quando tenho o retorno com uma function, não consigo fazer o cálculo pois o retorno vem em string.
  7. Resolvido. Mamão com açúcar caso alguém precise um dia. Fica faltando executar a soma, nisto ainda estou quebrando a cabeça. Caso alguém saiba como realizar a soma de uma operação que está como string no mysql, por favor me ajude. Equivale a função eval() do javascript. select convert_formula("[792]+[793]+[794]+[795]+[911]+[912]") as valor; Function CREATE DEFINER=`hoster`@`%` FUNCTION `convert_formula`(formula varchar(255)) RETURNS varchar(555) CHARSET latin1 BEGIN SET @newformula = formula; SET @limitador_loop = quantCaracter(formula,"["); SET @count = 1; WHILE(@count <= @limitador_loop) DO SET @cod_derex = substring_index(substring_index(formula,']',@count),'[',-1) ; SELECT valor FROM tmp_relger WHERE cod_derex = @cod_derex INTO @valor; SET @newformula = REPLACE(@newformula,@cod_derex,@valor); SET @count = @count+1; END WHILE; SET @newformula = REPLACE(REPLACE(@newformula,'[',''),']',''); RETURN @newformula; END Function CREATE DEFINER=`hoster`@`%` FUNCTION `quantCaracter`(x varchar(255), delim varchar(12)) RETURNS int(11) BEGIN RETURN (length(x)-length(REPLACE(x, delim, '')))/length(delim); END
  8. Iai Pessoal, postando pela primeira vez aqui nesta área!! Tenho uma situação muito complicada para resolver e gostaria da ajuda de vocês. Como substituir os dados de uma fórmula que está em string pelo resultado de consultas no banco de dados? Os números que estão na fórmula correspondem aos dados de uma tabela onde preciso trazer o valor como retorno. Select codrelatorio, situacao, formula Select 10, "teste", "([981] + [988]) / [700]" formula Ex.: Pegar o número 981 e realizar uma consulta em uma tabela, retornando assim o valor 1090.01; begin @valor = SELECT v.valor FROM table_exemplo WHERE codigo = 981 return @valor; end Fórmula: (1090.01 + [988]) / [700] E assim por diante até ter todos os números da fórmula substituídos e ter este resultado: Select 10, "teste", (1090.01 + 150) / 55 formula
  9. Ericsson Berg

    Acessar Matrizes de objeto

    Vai se tentando até talvez achar a solução..kkkkkkk segue: obj[0][1].QTDE Vlw. EdCesar, obrigado.
  10. Ericsson Berg

    Acessar Matrizes de objeto

    Boa noite!! Alguém sabe como acessar um retorno de PHP de uma matriz de objeto via javascript? Retorno PHP: '[{"1":{"QTDE":"49"}}]' Código Javascript que ainda não funciona: <!DOCTYPE html> <html> <body> <h2>Create Object from JSON String</h2> <p id="demo"></p> <script> var text = '[{"1":{"QTDE":"49"}}]'; obj = new Object; obj = JSON.parse(text); document.getElementById("demo").innerHTML = obje.q[1].QTDE; </script> </body> </html> Não está retornando nada, o que alterar? No caso, eu poderei neste molde retornar duas matrizes com vários dados e tal, é por isso que preciso conseguir acessar este resultado.
  11. Ericsson Berg

    Acessar Matrizes de objeto

    eu alterei o corpo do último exemplo e não pecebi. O índice é são números. '[{"1":{"QTDE":"49"},"2":{"passagens":"30","nome":"fulano"}}]' Como acessar assim?
  12. Ericsson Berg

    Route retorna error 301 quando utilizo POST

    Boa tarde! Estou com um problema no retorno de um script, quando envio por POST registra o error 301 e em seguida ainda na requisição do apache o erro 405. Log do apache. 127.0.0.1 - - [15/May/2017:16:42:28 -0300] "POST /screenshot/ HTTP/1.1" 301 323 127.0.0.1 - - [15/May/2017:16:42:28 -0300] "GET /screenshot HTTP/1.1" 405 11668 Assim quando envio com GET uma string, ele funciona, mas quando envio com POST nada funciona. Alguém já passou por isso? //Função javascript var image = encodeURIComponent(image); var xhr = new XMLHttpRequest(); var request = "img="+image; xhr.open('POST', "/screenshot/", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.setRequestHeader("Content-Length", request.length); xhr.setRequestHeader("Connection", "close"); xhr.send(request); xhr.onreadystatechange = function () { if (xhr.status == 200 && xhr.readyState == 4) { alert(xhr.responseText); } else { } } //End Função javascript <?php //Route Route::post('/screenshot' , 'ScreenshotController@saveimage'); //End Route //Controller namespace App\Http\Controllers; use Illuminate\Http\Request; use App\Http\Requests; class ScreenshotController extends Controller { public function saveimage(Request $request){ // echo "arqui"; } } //End - Controller
  13. Ericsson Berg

    [Resolvido] Copiar imagem para área de transferência

    Consegui chegar numa solução. Um script .js e uma script .php. Executando em dois passos: o 1º gerar a imagem e o 2º copia para a área de transferência. Como estou melhorando o script, assim que tiver ele finalizado eu posto aqui, é simples e acho que poderá ajudar quem estiver nessa mesma situação a qual me encontrava.
  14. Ericsson Berg

    [Resolvido] Copiar imagem para área de transferência

    Segue o que consegui até agora. Exemplo teste. Faz quase tudo, só não copia a imagem para a área de transferência. Vi que copia um quadrado em branco. <html> <head> <script src="https://code.jquery.com/jquery-3.1.0.js" integrity="sha256-slogkvB1K3VOkzAI8QITxV3VzpOnkeNVsKvtkYLMjfk=" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/html2canvas/0.4.1/html2canvas.js"></script> </head> <body > <input id="copy_btn" type="button" value="copy" onclick="copyElement('table')"><br> <!--<button type="buttom" onclick="duplicar()">Copiar</button>--> <a href="#" id="salvar">SALVAR</a> <!-- <iwmg src="d.jpg"/>--> <TABLE id="table" class="table" BORDER=1> <! Inicia a tabela e coloca uma borda de espessura igual a 1> <TR> <! Cria a primeira linha da tabela> <TD>PRIMEIRA COLUNA </TD> <! Aqui foi criada uma célula> <TD>SEGUNDA COLUNA </TD> <TD>TERCEIRA COLUNA </TD> </TR> <! Fecha a primeira linha da tabela> <TR> <! Abre a segunda linha da tabela> <TD> PRIMEIRA COLUNA</TD> <TD>SEGUNDA COLUNA </TD> <TD>TERCEIRA COLUNA </TD> <TR> <! Encerra a Segunda linha da tabela> </TABLE> <! Encerra a tabela> <div class="img" > <img id="imageCanvas"> </div> <div class="can" ></div> </body> <script> function copyElement(id) { html2canvas($(".table"), { onrendered: function(canvas) { // $(".img").append(canvas); var image = new Image(); imgData = canvas.toDataURL("image/png"); document.getElementById('imageCanvas').src = imgData; //$(".img").append(image); // document.write('<img src="'+image+'"/>'); } }); //SEleciona e copia a imagem -> Mas não copia apesar do elemento existir var element = document.querySelector('img'); var range = document.createRange(); range.selectNode(element); window.getSelection().removeAllRanges(); window.getSelection().addRange(range); document.execCommand('Copy'); } //Faz download da imagem document.getElementById('salvar').addEventListener('click', function(e){ this.href = imgData; // source this.download = 'canvas.png'; // nome da imagem return false; }); </script> </html>
  15. Ericsson Berg

    Definir nível de acesso com Laravel

    Boa tarde! Iai pessoal!! Tô me aventurando com o Laravel e que por sinal achei muito interessante!! Contudo, estou parado numa situação... Como implementar um nível de permissão na route? Ex.: Tenho no banco a tabela Modulos onde estão cadastrados os dados dos 7 módulos e cada módulo trabalha com N relatórios para determinadas finalidades, o módulo comissão possui o código de acesso 21001 cadastrado no banco de dados, { id=1 | cod_acesso = 21001 | descricao = comissoes} , assim quando o usuário clica no link do módulo Comissão é disparado uma requisição para a rota, '/comissao/21001', com base nisso teria que verificar se o usuário tem está permissão cadastrada na tabela nvl_permissoes_modulos. O máximo que cheguei foi nisso: //routes.php //Verifica se o usuário está logado Route::group(['middleware' => ['auth']],function(){ //verifica se o usuário possui a permissao no BD Route::group(['prefix' => '/comissao/21001'], function(){ //Se tiver a permissão libera o acesso as demais rotas /* Seria talvez algo aqui para verificar o acesso*/ { Route::get('/comissao','ComissaoController@index_comissao'); Route::get('/comissao/posvendas/chefe','ComissaoController@comissao_chefe'); Route::get('/comissao/posvendas/tecnico','ComissaoController@comissao_tecnico'); } }); }); Quando recorro ao pessoal do fórum é pq já morri de pesquisar e não achei nada..... Então, como sou iniciante sei que pode haver erro na sintaxe e tal, relevem.
  16. Ericsson Berg

    Definir nível de acesso com Laravel

    Williams Duarte, vlw pela dica, vou começar a assistir!!
  17. Ericsson Berg

    Class - Problema na segunda chamada da função

    Boa tarde, galera!! Tô com um problema na chamada da segunda função de uma class. As functions trazem consultas do banco de dados, assim, em uma consulta eu terei que trazer dois arrays, então dentro da classe Veículos criei uma função base para chamar as duas função que trarão o resultado dos Selects, porém somente a primeira função traz resultado, a segunda somente funciona se eu omitir a primeira, deve ser algo em relação a conexão, segue o código: class Veiculos { public function veic_lb_ll() { $dados1 = Veiculos::query1(); $dados2 = Veiculos::query2(); Retorno_consulta::formatResults($dados2); //Esta parte é só para demonstrar } public static function query1() { include_once('veiculos/veic_lb_ll.php'); //Este include traz a query = armazena em $sql $dados1 = Conexao::oracle($sql); return $dados1; } public static function query2() { include_once('veiculos/veic_lb_ll.php'); //Este include traz a mesma query para teste $dados2 = Conexao::oracle($sql); return $dados2; } } //Classe de Conexão com o Banco de Dados class Conexao{ public static function oracle() { $conn = oci_connect(DB_USER, DB_PASSWORD, DB_HOST) or die ("Conexão com o banco Falhou!"); $statement = oci_parse($conn,$sql); oci_execute($statement); oci_close($conn); //Criar um array $dados = array(); //Transfere os dados para o array $x=0; while (($row = oci_fetch_object($statement)) != false){ $x++; $dados[$x] = $row; } oci_free_statement($statement); return $dados; } }
  18. Ericsson Berg

    Class - Problema na segunda chamada da função

    Dentro de veic_lb_ll.php tem as querys; $sql1 = "Select query 1"; $sql2 = "Select query 2"; [...] include('veiculos/veic_lb_ll.php'); //Inclusão das querys $dados1 = $this->query1($sql1); //Realiza o Select 1 $dados2 = $this->query2($sql2); //Realiza o Select 2 [...] Quanto a Registry, fiz o código acima e dei uma include. Vou ver como fazer com o Autoload.
  19. Ericsson Berg

    Class - Problema na segunda chamada da função

    kkkkkk, tirei o include_once mas deixei o include, porque traz as variáveis com o Select, achei a melhor forma de utilizar. class Veiculos { public function veic_lb_ll($requisicao) { include('veiculos/veic_lb_ll.php'); //Inclusão das querys $dados1 = $this->query1($sql1); //Realiza o Select 1 $dados2 = $this->query2($sql2); //Realiza o Select 2 $dados = array($dados1,$dados2); //Cria array dos resultados Retorno_requisicao::formatResults($dados); //Devolve resultado da requisição criptografada } } ................................................................................. Então, tô tentando usar o Registry, mas estou tendo problemas para instanciar, se poder tirar uma dúvida no código. agradeço. <?php $ora_bd = " (DESCRIPTION= (ADDRESS_LIST= (ADDRESS=(PROTOCOL=TCP) (HOST=10.0.00.000)(PORT=000) ) ) (CONNECT_DATA=(SERVICE_NAME=SMAFF)) )"; //Página do registry // Hostname define ( 'DB_HOST', $ora_bd); // Username define ( 'DB_USER', 'imasters' ); // Password define ( 'DB_PASSWORD', 'im****' ); // Databse Name define ( 'DB_DB', 'IMASTERS' ); class Registry{ /** * Conjunto de dados * @var instanceof ArrayObject */ private $data; /** * Aqui ficará a instancia do próprio objeto * @var instanceof self */ private static $instance; /** * Private para não permitir ser instanciado */ private function __construct(){ $this->connections = new ArrayObject; } /** * Cria a instancia do objeto * @return instanceof Registry */ public static function getInstance(){ if( !( self::$instance instanceof Registry ) ){ self::$instance = new Registry; } return self::$instance; } /** * Adiciona um dado ao Registry * @param $key Nome para reconhecimento de determinado registro * @param $value Registro * @throws InvalidArumentException Caso a key já tenha sido adicionada */ public function addElement( $key, $value ){ if( $this->data->offsetExists( $key ) ){ throw new InvalidArgumentException( sprintf( '"%s" have already added', $key ) ); } $this->data->offsetSet( $key, $value ); } /** * Remove um dado do Registry * @param $key O nome relacionado ao registro * $throws InvalidArgumentExcpeiton Caso o nome não esteja associado a algum registro */ public function removeElement( $key ){ if( !$this->data->offsetExists( $key ) ){ throw new InvalidArgumentException( sprintf( '"%s" not found', $key ) ); } $this->data->offsetUnset( $key ); } /** * Retorna um registro * @param $key Nome de registro do elemento * @return Algum valor registrado * $throws InvalidArgumentExcpeiton Caso o nome não esteja associado a algum registro */ public function getElement( $key ){ if( !$this->data->offsetExists( $key ) ){ throw new InvalidArgumentException( sprintf( '"%s" not found', $key ) ); } return $this->data->offsetGet( $key ); } /** * Retorna se um determinado nome de registro existe * @param $key Nome de registro do elemento * @return bool */ public function existsElement( $key ){ return $this->data->offsetExists( $key ); } } $registry = Registry::getInstance(); $connection = oci_connect(DB_USER, DB_PASSWORD, DB_HOST); //***************************/ O problema começar aqui e o código buga.... $registry->addElement( 'connection_1', $connection ); $registry = Registry::getInstance(); $connection = 'connection_1'; if( $registry->existsElement( $connection ) ){ $oracle = $registry->getElement( 'connection_1' );//Ou connection_2 } E já li algumas coisas e mexi e remexi código, mas sem êxito...
  20. Ericsson Berg

    Class - Problema na segunda chamada da função

    Tô com o artigo bom aqui de padrões de projeto, tô lendo desde ontem. O meu problema acima era o include_once, mas já até reformulei a estrutura da class.
  21. Ericsson Berg

    Class - Problema na segunda chamada da função

    Como encerra os tópicos??
  22. Ericsson Berg

    Class - Problema na segunda chamada da função

    Penei, mas resolvi. Erro besta....
  23. Ericsson Berg

    Webservice - dúvida

    Vlw pessoal! Vou começar as leituras sobre os assuntos e sites apontados.
  24. Ericsson Berg

    Webservice - dúvida

    Olá galera! Então, falando com um colega de trabalho, ele falou que o modelo de Web Service que estou fazendo não é o ideal por não utilizar o formato XML. Já havia visto várias assuntos sobre o tipo, mas ainda assim decidi fazer do meu jeito, o qual já tinha boa parte pronto por causa de um outro trabalho que realizei. A forma que estou fazendo o Web Service é a seguinte: Solicitação do CLIENTE(Saída com criptografia) -> SERVER(Entrada retira criptografia) -> SERVER-Realizar o Select (Traz o retorno em ARRAY) -> SERVER(Saída com criptografia) -> CLIENTE(Entrada retira criptografia) -> CLIENTE-Aplicação do lado cliente elabora e mostra o resultado. Então, fiz o webservice sem utilziar o XML. Mas aí surgiu a dúvida: Poderei ter problemas futuros?
  25. Ericsson Berg

    Webservice - dúvida

    O meu retorno é em JSON, mas esta vai ser uma aplicação comercial, no entanto, toda a estrutura é condicionada ao meu desenvolvimento. O retorno das informações é particular. O método de criptografia é "AES-256-CBC";
×

Important Information

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