Jump to content

hufersil

Members
  • Content count

    929
  • Joined

  • Last visited

  • Days Won

    12

Everything posted by hufersil

  1. hufersil

    Ajuda com regex

    $string = "| A# | B/D# | C11 | D | E | F | G |"; echo preg_replace("@([A-Z](#)?)@", '&$1&', $string);
  2. hufersil

    Consulta com Checkbox

    Se eh um checkbox para a mesma informacao e ambas precisam ser enviadas, tem que estar no formato de array: <input type="radio" name="tipo_curso[]" value="Presencial">Presencial <input type="radio" name="tipo_curso[]" value="EAD">EAD Veja os colchetes no atributo name
  3. hufersil

    Agendamento de Tarefas Laravel 5.2

    No seu sistema, não rola controlar a sessão no banco de dados? Tendo isso no banco, ficaria bem mais fácil.
  4. hufersil

    DateTime::diff não calcula corretamente período 16/10/2016 a 19/10/201

    Horário de verão, por isto dá 3 dias (dois do diff, porque não são dias completos e mais um extra). Tem que igualar os timezones (se quiser desconsiderar o horário de verão). $data_1 = new DateTime('2016-10-16', new DateTimeZone('-03:00')); $data_2 = new DateTime('2016-10-19', new DateTimeZone('-03:00'));
  5. hufersil

    Subtrair horas de um tempo

    select sec_to_time( time_to_sec(timediff('2016-10-30 17:00:00','2016-10-10 15:30:00')) - time_to_sec('48:00:00') ); @braços
  6. hufersil

    manter itens que foram selecionados ativo/selected

    Complementando: O nome do elemento select deve indicar que é um array: <select name="dia_da_semana[]" multiple="multiple" size="7"> Veja os [ ] no atributo name
  7. hufersil

    Mesclar dias em um calendário igual Google Calendar

    Acho que ao invés de reinventar a roda, usá-la seria mais produtivo... Veja o FullCalendar
  8. hufersil

    Cálculo de porcentagem com segundos

    Para isso você precisa de uma data inicial também. Seriam 3 datas: Início Fim Atual date_default_timezone_set('America/Sao_Paulo'); $inicio = new DateTime('2016-09-22 17:30:00'); $fim = new DateTime('2016-09-29 14:30:00'); $agora = new DateTime(); $diffInicioFim = $fim->getTimestamp() - $inicio->getTimestamp(); $diffInicioAgora = $agora->getTimestamp() - $inicio->getTimestamp(); $pct = $diffInicioAgora / $diffInicioFim * 100; echo number_format($pct, 2), PHP_EOL;
  9. hufersil

    Pegar resultados de diversos concursos da loteria

    O que ele disse foi para ir fazendo cache gradativamente. Não precisa ser na hora que o usuário acessa. Pode ser através de uma atividade cadastrada via CronTab (tarefas agendadas). A carga inicial, você pode "fazer na mão" mesmo. E quando usuário acessar, ao invés de fazer essa consulta com cURL, utilize uma consulta ao seu banco de dados local.
  10. hufersil

    Assinatura PagSeguro via API cURL

    Use a biblioteca do PagSeguro. Bem mais fácil. https://github.com/pagseguro/php
  11. hufersil

    sms - erro ao obter resultado de envio sms - return - php

    Tente usar cURL
  12. hufersil

    Deprecated: preg_replace() [ERRO]

    O modificador e (eval) do preg_replace foi depreciado faz tempo. Quando utilizar o preg_replace_callback, utilize uma função, seja ela um método de classe, função normal (assinatura definida) ou lambda. Exemplo: $template = '%{nome}, seja bem vindo ao portal %{portal}'; $data = array( 'nome' => 'Hugo', 'portal' => 'iMasters', ); $html = preg_replace_callback('@%\{(\w+)\}@', function($matches) use ($data) { if(array_key_exists($matches[1], $data)) { return $data[$matches[1]]; } return null; }, $template); echo $html; @braços
  13. hufersil

    Como eu poderia usar json_decode aqui?

    $str = <<<TESTE [[["Você pode me ajudar? ","You can help me?",,,1],["Eu pago agora! ","I pay now!",,,0],["Sem descontos !","Without discounts!",,,0]],,"",,,[["You can help me?",32000,[["Você pode me ajudar?",0,true,false]],[[0,16]],"You can help me?",0,0],["I pay",32002,[["Eu pago",562,true,false],["Eu presto",0,true,false],["Posso pagar",0,true,false],["Presto",0,true,false],["Pago",0,true,false]],[[0,5]],"I pay now!",0,2],["now !",32003,[["agora!",428,true,false]],[[6,10]],,2,4],["Without",32008,[["Sem",819,true,false],["Não",0,true,false],["Sem a",0,true,false]],[[0,7]],"Without discounts!",0,1],["discounts",32009,[["descontos",819,true,false],["descontos em",0,true,false],["discontos",0,true,false],["de descontos",0,true,false],["descontos de",0,true,false]],[[8,17]],,1,2],["!",32010,[["!",819,false,false]],[[17,18]],,2,3]],0.71528161,["You can help me? I pay now! Without \u003cb\u003e\u003ci\u003ediscounts\u003c/i\u003e\u003c/b\u003e!","You can help me? I pay now! Without discounts!",[1],,,true],[["en"],,[0.71528161]]] TESTE; $str = preg_replace('@,+@',',',$str); print_r(json_decode($str));
  14. hufersil

    Lendo PDF e separando valores em uma lista

    Tenho usado o XPDF. O binário pdftotext gera um arquivo texto muito bem estruturado e fácil de trabalhar.
  15. hufersil

    Duplicata de chave primária (ID)

    Só uma informação importante, como já citei anteriormente: Se tiver FK que faz referência a esta PK, REPLACE não é recomendado porque ele faz um DELETE antes! Nos comentários do link tem gente falando sobre isso também. Se tiver FK, recomendo o INSERT INTO ... ON DUPLICATE
  16. hufersil

    Calcular difença da data e hora

    $hoje = new DateTime(); $inicio = new DateTime('2015-10-22 17:07:00'); $fim = new DateTime('2015-10-31 10:07:00'); $decorrido = $hoje->getTimestamp() - $inicio->getTimestamp(); $tempoTotal = $fim->getTimestamp() - $inicio->getTimestamp(); $pct = $decorrido / $tempoTotal * 100; echo number_format($pct, 1);
  17. hufersil

    Duplicata de chave primária (ID)

    O MySQL suporta REPLACE e INSERT INTO ... ON DUPLICATE. O primeiro, efetua um delete e depois insere o registro. O segundo, tenta inserir, se não conseguir (por conta das chaves primárias que duplicariam) ele faz um update nos campos necessários. A vantagem destes dois é que você tem que fazer uma consulta a menos para ver se existe ou não. Se sua tabela não tem FK, usaria REPLACE. Se tiver, INSERT INTO ... ON DUPLICATE ...
  18. hufersil

    Duplicata de chave primária (ID)

    https://dev.mysql.com/doc/refman/5.5/en/replace.html
  19. tenta trocar isto $xpath->query('//procedimentoExecutado', $item) por isto // note o ponto antes das barras $xpath->query('.//procedimentoExecutado', $item)
  20. Tenho, mas não passo nestas situações. Coloca num dropbox, gdrive da vida e manda o link.
  21. Coloca o XML para download em algum lugar e manda o link
  22. Com o que postei tá fácil de resolver. Basicamente é só fazer a mesma coisa com xpath para o nó desejado. $dom = new DOMDocument('1.0', 'utf-8'); $dom->load("pacientes.xml"); $xpath = new DOMXPath($dom); $pacientes = $xpath->query('//guiaSP-SADT'); foreach($pacientes as $item) { echo 'Nome Beneficiario: ', $xpath->query('dadosBeneficiario/nomeBeneficiario', $item)->item(0)->nodeValue, '<br>'; echo 'Registro ANS: ', $xpath->query('cabecalhoGuia/registroANS', $item)->item(0)->nodeValue, '<br>'; echo 'Numero Guia: ', $xpath->query('cabecalhoGuia/numeroGuiaPrestador', $item)->item(0)->nodeValue, '<br>'; echo 'Procedimentos executados:<br>'; foreach($xpath->query('//procedimentoExecutado', $item) as $procedimento) { printf('--> Data: %s<br>', $xpath->query('dataExecucao',$procedimento)->item(0)->nodeValue); printf('--> Codigo Tabela: %s<br>', $xpath->query('procedimento/codigoTabela',$procedimento)->item(0)->nodeValue); printf('--> Codigo procedimento: %s<br>', $xpath->query('procedimento/codigoProcedimento',$procedimento)->item(0)->nodeValue); printf('--> Descricao procedimento: %s<br>', $xpath->query('procedimento/descricaoProcedimento',$procedimento)->item(0)->nodeValue); printf('--> Quantia: %s<br>', $xpath->query('quantidadeExecutada',$procedimento)->item(0)->nodeValue); printf('--> reducaoAcrescimo: %s<br>', $xpath->query('reducaoAcrescimo',$procedimento)->item(0)->nodeValue); printf('--> valorUnitario: %s<br>', $xpath->query('valorUnitario',$procedimento)->item(0)->nodeValue); printf('--> valorTotal: %s<br>', $xpath->query('valorTotal',$procedimento)->item(0)->nodeValue); echo '<hr>'; } }
  23. Já tentou com XPath? $dom = new DOMDocument('1.0', 'utf-8'); $dom->load("pacientes.xml"); $xpath = new DOMXPath($dom); $pacientes = $xpath->query('//guiaSP-SADT'); foreach($pacientes as $item) { echo 'Nome Beneficiario: ', $xpath->query('dadosBeneficiario/nomeBeneficiario', $item)->item(0)->nodeValue, '<br>'; echo 'Registro ANS: ', $xpath->query('cabecalhoGuia/registroANS', $item)->item(0)->nodeValue, '<br>'; echo 'Numero Guia: ', $xpath->query('cabecalhoGuia/numeroGuiaPrestador', $item)->item(0)->nodeValue, '<br>'; } Resultado do seu arquivo: Nome Beneficiario: FULANDO DE TAL Registro ANS: 309222 Numero Guia: 60000000000005
  24. hufersil

    Galeria de fotos relatorio FPDF

    Se tiver como instalar no servidor: http://wkhtmltopdf.org/
  25. hufersil

    CSV para JSON

    Acho que isto resolve seu problema. $csv = 'XPTO TESTE;XPTO TESTE 2;XPTO TESTE 3;TESTE 2 TESTE 4;TESTE 2 TESTE 5;TESTE 3 TESTE 6;TESTE'; $lista = array(); foreach(explode("\n", $csv) as $value) { $pair = str_getcsv($value,";"); if(count($pair) == 1) { $pair[1] = null; } $lista[] = $pair; } $master = 0; $slave = 1; $newProp = 'children'; $flat = array(); foreach ($lista as & $item) { $flat[$item[$master]] =& $item; } foreach ($flat as & $node) { if (!empty($node[$slave])) { $flat[$node[$slave]][$newProp][] =& $node; } } $novo = array(); foreach ($flat as $idx => $first) { if (empty($first[$slave])) { $novo[] = $first; } } echo '<pre>'; print_r($novo);
×

Important Information

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