Jump to content

Diego Rinno

Members
  • Content count

    314
  • Joined

  • Last visited

  • Days Won

    1

Diego Rinno last won the day on March 21 2013

Diego Rinno had the most liked content!

Community Reputation

35 Levemente Bom

6 Followers

About Diego Rinno

  • Rank
    Gerente de Marketing
  • Birthday May 14

Informações Pessoais

  • Sexo
    Masculino

Recent Profile Visitors

992 profile views
  1. Diego Rinno

    gerador de resultados hash 512

    E no caso de gerar um hash aleatório sem repetir nenhum deles nem mesmo uma única vez seria um pouco mais complicado... você teria de armazenar cada resultado num array e depois verificar a existência dele. Caso exista, remove faria com que seu laço de repetição fosse executado uma vez mais além do esperado. Recomendo que você aprenda primeiro a fazer da forma como está agora, simplesmente gerando números aleatórios de 1 a 100 pra só depois passar pra essa outra parte mais complexa, um pouco (mas também não é um bicho de 7 cabeças).
  2. Diego Rinno

    gerador de resultados hash 512

    Boa tarde! Desculpa a demora a responder, fiquei sem conexão por conta de um poste que caiu aqui perto de casa. Enfim, vamos la. Se você quer gerar 100 resultados diferentes, poderia resolver facilmente alterando um pouco o seu código atual. Para tanto, bastaria mover parte do seu código e inseri-lo totalmente dentro do seu laço de repetição foreach(), que já é responsável por realizar um mesmo script N vezes, dessa forma: <?php // array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, ..., 3000) $n=1; foreach (range(1, 100) as $number) { $variavel = hash('sha512', $number).'-12345-1'; do { $variavel = sha1($variavel); $lucky = hexdec(substr($variavel,0,8)); } while ($lucky > 4294960000); $luckyNumber = ($lucky % 10000) / 100; if ($luckyNumber < 0) $luckyNumber = -$luckyNumber; echo "Resultado $n<br />\r\n".hash('sha512', $number).' = '; echo $luckyNumber .'<hr>'; $n++; } OBS: A variável $n eu coloquei simplesmente pra facilitar sua visualização e pra que você possa perceber com mais facilidade que ele, de fato, gerou os 100 resultados, bem como o trecho "Resultado $n<br />\r\n". do código também é simplesmente para uma melhor visualização. Todos esses trechos de código devem ser removidos quando você for utilizá-lo para seu objetivo final, depois que aprender como fazer.
  3. Diego Rinno

    Ajuda com preg_match()

    Boa noite! Tenho tentado estudar expressões regulares via preg_match mas não tenho me saído bem hehehe Alguma boa alma poderia me explicar a seguinte regex? /((?:f|ht)tp(?:s)?){1}:\/{2}(?:\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/ Eu sei que ela detecta a existência de http:// ou https:// e www a fim de detectar a existência de um URL na variável, mas não sei, de fato, o que significa e como funciona cada bloco desses. Alguém poderia me explicar? Meu objetivo é criar uma que detecte até mesmo URLs do tipo site.com ou site.br ou www.site.com ou sub.dominio.com, etc.
  4. Diego Rinno

    gerador de resultados hash 512

    Primeiramente boa madrugada! Gerar 3.000 linhas de resultado e exibir numa só página sem paginação seria exaustivo pro leitor, quem quer que ele seja, além de bastante desorganizado. Sem contar que geraria um "peso" grande na renderização da página e facilmente travaria o navegador num PC mais modesto. Sabendo disso, você precisa entender como e o que são as variáveis, precisa aprender sobre a estruturação da linguagem. Vamos começar. Vou explicar linha por linha do seu código. foreach(){} é um loop, um laço de repetição específico para trabalhar com arrays (sabe o que são arrays? se não, pergunte). for = para, each = cada. Leia o foreach assim: para cada($índice_do_meu_array como $string_que_armazenará_o_valor_do_índice_atual){processe este código}. Existem muitos laços de repetição, estude-os. echo hash('sha512', $number).'<br>'; Leia: imprima na tela este número criptografado em sha512 e gere uma quebra de linha HTML ao final. $seed é uma variável onde você deve armazenar o valor gerado pelo código acima. Pelo que entendi do script você deveria escolher um hash exclusivo e inseri-lo neste campo. Para definir um valor a uma variável, comumente utiliza-se o seguinte método: $variavel = "valor"; ou $variavel = false; ou $variavel = true; ou $variavel = 123456789; etc. do{}while() é outro laço de repetição. Leia: faça{este código}enquanto(esta condição for verdadeira); Esse trecho do seu cógido gera um número aleatório e o insere na variável $lucky. A função hexdec($variavel) retorna o decimal equivalente do número hexadecimal enviado via $variavel e converte uma string hexadecimal para um número decimal, ignorando qualquer caracter não hexadecimal que encontrar em $variavel. $luckyNumber = ($lucky % 10000) / 100; essa é uma operação matemática. Ela resulta no módulo (resto da divisão) de $lucky por 10.000 e divide o resultado por 100. Por exemplo, 10 % 8 é o mesmo que 10 /8 = 1 com resto 2, portanto 10 % 8 retornaria 2. if ($luckyNumber < 0) $luckyNumber = -$luckyNumber; Esse trecho diz o seguinte: se $luckyNumber for menor que 0, então $luckyNumber é igual a -$luckyNumber (o mesmo número com o indicador de negativo). echo $luckyNumber; Leia: imprima minha variável chamada $luckyNumber. Você poe exibir o resultado do jeito que deseja concatenando (juntando) as variáveis que contenham o hash e o resultado. No entanto no seu código, o hash sha512 não está sendo armazenado em local algum. Você precisa armazená--lo ou envia-lo para a página que gerará o $luckyNumber. Você pode fazer isso de duas formas: randomizando completamente o código, deixando de exibir os hashes na tela e sim armazenando um aleatório numa variável (substitua o echo por $variavel = ), mas não bastaria simplesmente fazer isso, pois, faça o teste, o resultado seria SEMPRE um hash do número 3000. Neste caso, recomendo que utilize a função rand(1, 3000) para gerar um número aleatório e então encripte-o com hash("sha512", $numeroAleatorio). Lembre de armazenar o valor do rand() numa variável para encriptá-la depois. Dessa forma já resolveria sua questão imprimindo algo similar a $luckyNumber.' '.$numeroAleatorio; Para concatenar strings utilize o PONTO . entre elas. Você pode concatenar uma variável a uma string explícita também, como fiz no exemplo acima em .' '., que é uma string com um espaço como sendo o seu valor. Outra opção seria gerar os hashes, como é feito atualmente, numa página e utilizar um formulário HTML para enviá-lo à página que gera o $luckyNumber. Neste caso, capture o valor do seu <input> que terá a hash escolhida pelo usuário da página utilizando as variáveis reservadas $_GET["nome do campo no formulário"] ou $_POST["nome do campo no formulário"], a depender o ditpo de postagem realizada através deste formulário. Após capturado o valor, adicione-o à variável $seed e o resto ocorrerá normalmente, gerando seu $luckyNumber. Se ainda tiver dúvidas, pergunte.
  5. Diego Rinno

    Cortador de Imagens em jQuery

    TÓPICO RESOLVIDO Havia um erro nesse script e outro no código PHP que faz o corte da imagem. No script que postei, eu adicionava 150px ao eixo X e 100px ao eixo Y, o que ocasionava erro. Era um trecho de código que coloquei para testes e havia me esquecido de remover. Feita a troca, que pode ser vista abaixo, o script passa a ser totalmente funcional. Caso alguém queira usar esse código, peço que dê os devidos créditos somente (talvez um link para esta postagem, para que possa ajudar mais pessoas). O segundo erro estava no código PHP. Erro de iniciante, admito: eu estava trocando as posições dos eixos X e Y na hora de cortar a imagem. Simplesmente coloquei cada valor de eixo retornado pelo script em sua devida variável e o corte ficou simétrico.
  6. Diego Rinno

    Cortador de Imagens em jQuery

    Primeiramente, olá a todos(as)! EXPLICAÇÃO: Estou tentando estudar a biblioteca de imagens do PHP e criar uma espécie de cortador de imagens em jQuery ao mesmo tempo, simplesmente pra ampliar meus conhecimentos na área. Não vou, de modo algum, usar plugins já prontos, sei que existem. Meu objetivo aqui é aprender a fazer um do zero, ser capaz de criar coisas e não de reutilizar. Tendo isto em vista, tenho a maior parte do código já pronta. Criei um cortador de imagens em PHP e está funcionando plenamente. O meu problema é na hora de recuperar as posições X e Y da imagem que é exibida no cortador pra então enviar ao script php que, de fato, fará o corte. Tenho dois códigos abaixo que são funcionais, criei-os para que possam testar, se quiserem. Como é um código que necessita de uma tela de tamanho razoável, não recomendo utilizar jsfiddle e similares para o teste, emulem o código num localhost. O primeiro arquivo é o index.html que chamará num iframe a página que fará o corte da imagem. A segunda, que deve ser nomeada adminImage.php é o conteúdo do iframe, o app que fará o corte da imagem. Note que nesta página há dois campos INPUT que exibem, respectivamente, as posições X e Y da área de seleção que pode ser movida, a que define o corte na foto. O REAL PROBLEMA: Apesar de tudo estar funcionando, o corte da imagem é imperfeito porque eu retorno as posições X e Y da área de corte em relação à página inteira e não ao elemento que compreende a imagem a ser cortada. Na posição inicial do seletor, os valores dentro dos campos input que exibem as posições X e Y deveriam ser, ambas, 0. No entanto, ele me retorna a posição com relação ao topo da página e não ao topo do elemento em si. Necessito de uma maneira de calcular a diferença entre o topo da página e o topo do elemento container que contém minha imagem a ser cortada para então recalcular as posições X e Y do seletor de corte subtraindo essas duas novas variáveis. Desta forma eu obteria a posição exata do seletor de corte em relação à imagem a ser cortada. Se não me fiz entender, por favor digam. Agradeço qualquer ajuda! OS CÓDIGOS: index.html <!DOCTYPE html> <HTML lang="pt"> <HEAD> <TITLE>Teste</TITLE> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="title" content="Página de teste" /> <meta name="description" content="Página de teste" /> <meta name="author" content="Diego Borges" /> <meta name="keywords" content="Página de teste" /> <meta name="reply-to" content="Página de teste" /> <meta name="generator" content="Página de teste" /> <meta property="og:url" content="Página de teste" /> <meta property="og:type" content="Página de teste" /> <meta property="og:title" content="Página de teste" /> <meta property="og:description" content="Página de teste" /> <meta property="og:image" content="Página de teste" /> <meta property="og:image:secure_url" content="Página de teste" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"> <script> $(document).ready(function(){ $("#container").css("width", $('input[name="LARGURA"]', window.parent.document).val()); $("#container").css("height", $('input[name="ALTURA"]', window.parent.document).val()); var mover_seletor = 0; $("#seletor").mousedown(function(){ mover_seletor = 1; }).mouseup(function(){ mover_seletor = 0; }); $("#container").on( "mousemove", function(event) { if(mover_seletor == 1 && $("#container").is(":hover")){ $("#seletor").offset(function(n, c){ newPos = new Object(); newPos.left = event.pageX; newPos.top = event.pageY; var c = $("#container").offset(); var s = $("#seletor").offset(); var corteX = s.top - c.top; var corteY = s.left - c.left; $('input[name="corteX"]', window.parent.document).val(corteX + 150); $('input[name="corteY"]', window.parent.document).val(corteY + 100); return newPos; }); }else{ return false; } }); }); </script> </HEAD> <BODY style="margin:0 0 0;padding:0 0 0 0;overflow:hidden;"> <table style="position:fixed;top:0px;left:0px;width:100%;height:100%;background-color:rgba(0,0,0,0.85);cursor:default;"><tr><td> <center> <br /><br /><br /> <iframe src="adminImage.php" style="width:1000px;height:500px;border:none;overflow:hidden;" oncontextmenu="return false;"></iframe> <br /> <input name="ALTURA" type="hidden"> <input name="LARGURA" type="hidden"> <input id="corteX" name="corteX" type="text"> <input id="corteY" name="corteY" type="text"> <input id="imgURL" name="imgURL" type="hidden"> <div OnCLick="cropAvatar($('#corteX').val(), $('#corteY').val(), $('#imgURL').val());" class="w3-panel w3-small w3-hover-orange w3-green" style="width:200px;margin-top:5px;">Cortar Imagem</div> </center> </td></tr></table> </BODY> </HTML> adminImage.php <!DOCTYPE html> <HTML lang="pt"> <HEAD> <TITLE>Teste</TITLE> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="title" content="Página de teste" /> <meta name="description" content="Página de teste" /> <meta name="author" content="Diego Borges" /> <meta name="keywords" content="Página de teste" /> <meta name="reply-to" content="Página de teste" /> <meta name="generator" content="Página de teste" /> <meta property="og:url" content="Página de teste" /> <meta property="og:type" content="Página de teste" /> <meta property="og:title" content="Página de teste" /> <meta property="og:description" content="Página de teste" /> <meta property="og:image" content="Página de teste" /> <meta property="og:image:secure_url" content="Página de teste" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> <link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css"> <script> function initialOffset(){ var _container_offset = $("#container").offset(); var _seletor_offset = $("#seletor").offset(); var corteX = _seletor_offset.top - _container_offset.top; var corteY = _seletor_offset.left - _container_offset.left; $('input[name="corteX"]', window.parent.document).val(corteX + 150); $('input[name="corteY"]', window.parent.document).val(corteY + 100); } $(document).ready(function(){ initialOffset(); var largura = $('input[name="LARGURA"]', window.parent.document).val(); var altura = $('input[name="ALTURA"]', window.parent.document).val(); if(largura != '' && altura != ''){ $("#container").css("width", $('input[name="LARGURA"]', window.parent.document).val()); $("#container").css("height", $('input[name="ALTURA"]', window.parent.document).val()); } var mover_seletor = 0; $("#seletor").mousedown(function(){ mover_seletor = 1; }).mouseup(function(){ mover_seletor = 0; }); $("#container").on( "mousemove", function(event) { if(mover_seletor == 1 && $("#container").is(":hover")){ $("#seletor").offset(function(n, c){ newPos = new Object(); newPos.left = event.pageX; newPos.top = event.pageY; var container_offset = $("#container").offset(); var seletor_offset = $("#seletor").offset(); var corteX = seletor_offset.top - container_offset.top; var corteY = seletor_offset.left - container_offset.left; $('input[name="corteX"]', window.parent.document).val(corteX + 150); $('input[name="corteY"]', window.parent.document).val(corteY + 100); return newPos; }); }else{ return false; } }); }); </script> </HEAD> <BODY style="margin:0 0 0;padding:0 0 0 0;overflow:hidden;"> <div id="container" class="w3-gray" style="margin-top:-16px;width:1000px;height:500px;background-size:100% 100%;background-position:center center;background-repeat:no-repeat;background-image: url('<?php echo $_GET["url"]; ?>');"> <div id="seletor" class="w3-panel w3-small rs-button rs-red-half" style="cursor:move;height:150px;width:300px;background:rgba(0,0,0,0.25);border:2px dashed silver;"></div> </div> </BODY> </HTML>
  7. Diego Rinno

    Como executar um comando SHELL via exec() em ambiente Windows?

    Aliás, como marco o post como resolvido? Há uns anos não entro aqui e como tudo mudou estou tendo dificuldade em achar o botão de marcar como resolvido.
  8. Diego Rinno

    Como executar um comando SHELL via exec() em ambiente Windows?

    Obrigado! Problema resolvido.
  9. Boa tarde, Necessito executar o comando a seguir num exec(), mas ele me retorna sempre um array vazio, nenhuma mensagem de erro, etc. Meu servidor está rodando num ambiente Windows, como estou acostumado com ambientes Linux pode ser este o motivo. Caso o comando não sirva pra Windows, como eu poderia convertê-lo para que rode nesse sistema? Pois necessito executá-lo numa aplicação em intranet, servidor local. Grato!
  10. Diego Rinno

    Obter texto selecionado na página

    Acabo de conseguir a solução e ficou dessa forma pra quem tiver a mesma dúvida: if(!window.Texto){ Texto = {}; } Texto.Selector = {}; Texto.Selector.getSelected = function(){ var t = ''; if(window.getSelection){ t = window.getSelection(); }else if(document.getSelection){ t = document.getSelection(); }else if(document.selection){ t = document.selection.createRange().text; } return t; } Texto.Selector.mouseup = function(){ var st = Texto.Selector.getSelected(); if(st!=''){ alert("Texto selecionado:\n"+st); } } $(document).ready(function(){ $(document).bind("mouseup", Texto.Selector.mouseup); });
  11. Diego Rinno

    Obter texto selecionado na página

    Boa tarde. Preciso reconhecer o texto que foi selecionado dentro de uma publicação de um blog e então exibir uma popup para compartilhar no Facebook e no Twitter esse texto. O problema é que eu já tentei algumas coisas e não tenho nem mais ideia do que fazer, pois nada funcionou. Se alguém puder me dar uma luz... segue abaixo as coisas que eu já tentei e não consegui fazer dar certo. Tentei ativar as funções usando o .select() do jQuery e também no OnClick, mas nada funcionou: EDIT: O que eu quero eu acabei de ver, é exatamente o que acontece no site do Tecmundo, dá uma olhada pra entender melhor. É só selecionar algum texto qualquer na publicação: http://www.tecmundo.com.br/patente/111775-6-patentes-tecnologias-loucas-nao-viraram-produtos-reais.htm?utm_source=tecmundo.com.br&utm_medium=home&utm_campaign=tv function getTextoSelPag(){ var s = ""; if(window.getSelection){ s = getSelection().toString(); } else if (document.selection){ s = document.selection.createRange().text; } return s; } $(document).ready(function(){ $('html, body').select(function(){ var texto; if(window.getSelection) { texto = String(window.getSelection()); }else if(document.selection){ texto = document.selection.createRange().text; }else{ texto = "Seu browser não suporta isto!"; } if(texto == '') texto = "Você deve selecionar algum texto para testar!"; $('#colar').html(texto); }); }); $('selector').click(function(){ var texto = $('textarea').get(0); var ss = texto.selectionStart; var se = texto.selectionEnd; var tf = texto.value.substring(ss,se); alert(tf); }); $(document).ready(function(){ $("p").select(function(){ alert("Texto selecionado!"); }); });
  12. Pra esse tipo de requisição assíncrona, utilize Ajax, de preferência com jQuery. Leia sobre o assunto no site oficial do jQuery: http://api.jquery.com/jquery.ajax/
  13. Diego Rinno

    Dúvida colocar R$ no input para enviar via from php

    Não esquece de marcar o tópico como resolvido.
  14. Diego Rinno

    Dúvida colocar R$ no input para enviar via from php

    E sobre inserir dois valores no mesmo campo, só se você armazenasse os dados em um array do tipo JSON, mas vai te complicar. Não existe outra solução? Se não existir, procure saber sobre como trabalhar com JSON no PHP.
×

Important Information

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