Ir para conteúdo

POWERED BY:

Omar~

Members
  • Total de itens

    1327
  • Registro em

  • Última visita

  • Dias vencidos

    15

Tudo que Omar~ postou

  1. Omar~

    Formatar "opacity"

    #test { background-color: rgba(0, 0, 255, .5) }
  2. Omar~

    erro php com java

  3. Omar~

    Calculo de combustível

    Volto a esse tópico depois de bastante tempo pois o projeto do aplicativo foi arquivado, mas recentemente devido a alta absurda dos combustíveis resolvi retornar ao desenvolvimento do aplicativo. A dificuldade de calculo é justamente não saber quanto o carro/veículo faz por litro, então a solução foi pensar em um carro de corrida. distancia_a_percorrer = math.ceil(100.00) litros_iniciais = math.ceil(30.200) litros_depois_da_distancia = math.ceil(29.050) - 1 # -1 para um calculo mais preciso distancia_restante_ate_o_combustivel_acabar = distancia_a_percorrer / (litros_iniciais - litros_depois_da_distancia) print(distancia_restante_ate_o_combustivel_acabar) Um simples calculo que no principio não estava conseguindo elaborar....
  4. Omar~

    Calculo de combustível

    Estou com dificuldade em elaborar o seguinte calculo: Um carro possui A de combustível de seu tanque Ao completar a 100 metros lhe restou B de combustível no tanque Seguindo esse ritimo de consumo quantos metros ele ainda vai poder percorrer? Parece simples não é, mas não estou conseguindo elaborar um calculo para isso....
  5. Omar~

    erro php com java

    Em resumo se vai usar uma função você deve recarregar-la. Quando você fez um require ele irá incorporar todos os dados PHP já processados até então junto a ele, mas quando você faz um ajax os dados do arquivos vão para o cabeçalho http antes que os dados anteriores terem existidos. Uma forma de exemplificar é isso: <?php echo hello(); // Erro essa função só existe depois, pois estou a chamando antes que ela exista function hello() { return ("Olá"); } Então se no arquivoA.php eu tenho já essa função, caso venha a usar um include em um arquivoB.php essa função exite então, só que seu usar ajax o arquivoB.php passa para antes que a função exista. Assim sendo no arquivoB.php basta fazer: <?php echo hello(); // erro em AJAX porque a função ainda não existe require_once("arquivo_da_funao.php"); echo hello(); // Sucesso em includes e AJAX /* devido ao require_once caso eu venda a dar include nesse arquivo ele não irá solicitar o mesmo arquivo novamente, mas no caso do ajax esse arquivo não existe aqui, assim então a função passa a ser incorporada evitando o erro */ Só que isso aqui não é uma boa ideia: Significa que a cada 2 segundos interruptamente a função é executada. Uma primeiro que você usa jQuery que é pesado demais para executar ajax, sobrecarregando o tempo de carregamento de todo documento html, isso quer dizer que sua aplicação será lenta para carregar, tirando a usabilidade de sua aplicação. Outra porque pelo que parece você está acessando um banco pelo arquivo divX.php, ou seja um máquina potente que pode suportar a exaustão causada pelo jquery o cara pode fazer: setInterval(reloadDivX, 1) que a cada 1 milésimo de segundo ele irá requeri o aquivo que por sua vez irá trabalhar do lado do servidor, dependendo então do que esse arquivo faz seu servidor pode não suportar a sobrecarga e cair. E mesmo que não haja alguém mau intencionado imagine 1000 pessoas acessando que a cada 2 segundos essas mil pessoas estarão requerendo dados do servidor interruptamente
  6. Isso é relativamente simples de fazer, porém inviável. Qualquer curso de programação web que se preste, uma das primeiras coisas que se ensina é "NUNCA EDITAR ARQUIVOS EM NUVEM" e eles "PROFESSORES COMPETENTES" estão absolutamente corretos em dizer isso. - Quanto ao HTML não há problemas. - Arquivos de folha de estilo e javascript acontece a seguinte situação: João da Silva acessou seu website todo css e js o hardware irá fazer o download deles para que na próxima vez que João acessar o browser não precise fazer o download novamente e sim usar os de antes. Podemos então definir um no-cache neles? Não, isso vai na contra mão das boas práticas da web. - Já os arquivos PHP é crítico! Um simples erro que cometer pode expor não só o código fonte como qualquer dado que deveria ser secreto para quem acessar. - O caso do wp é um sistema que trabalha ao oposto da segurança de um sistema que é ter Integridade e Confidencialidade por ser algo extremamente vulnerável. Eu até desenvolvi usando o code-mirror para realização dessa tarefa, mas é como disse. Implemente e irá se arrepender depois. Sugiro que veja essa palestra do Rafael:
  7. Omar~

    ALTERAR IMAGEM AO CLICAR NELA

    <img class="quadro" src="imagens/quadro.png" data-image="1" alt="" /> <img class="quadro" src="imagens/quadro.png" data-image="2" alt="" /> <img class="quadro" src="imagens/quadro.png" data-image="3" alt="" /> <script> var quadro = document.getElementsByClassName('quadro'); for (var i = 0; i< quadro.length; i++) { quadro[i].addEventListener('click', changeImage, false); } function changeImage(e) { var clickAtual = e.target; clickAtual.src = 'imagens/quadro-foto-' + (clickAtual).dataset.image + '.png'; } </script>
  8. Faltou mostrar como obtêm o nome do produto, e id do usuário. Sem essas informações não pude apresentar um exemplo melhor. <?php $produtos = [ 0 => ['id' => 1, 'nome' => 'lapis'], 1 => ['id' => 2, 'nome' => 'caneta'], 2 => ['id' => 3, 'nome' => 'borracha'] ]; var_dump($produtos); // Vendo se temos mesmo um array para percorrer ?> <hr /> <form method="POST" action=""> <?php foreach ($produtos as $produto) { ?> <input type="checkbox" name="check[]" id="<?= $produto['id'] ?>" value="<?= $produto['nome'] ?>" /> <?= $produto['id'] ?> <?php } ?> <button>Enviar</button> </form> <?php $post = filter_input_array(INPUT_POST, FILTER_DEFAULT); $inserir = []; if ($post) { foreach ($post['check'] as $chave => $valor) { $inserir[$chave] = $valor; var_dump($inserir[$chave]); // O id para executar a query } } Tenha em mente quantos input check podem ser enviados, pelo que percebi você irá executar uma query a cada input marcado. Então nada impede de alguém mau intencionado aditar o HTML pelo inspetor e colocar lá milhares de input fazendo seu sistema serve-side executar também milhares de vezes causando um colapso pela sobrecarga, sem entrar nos termos de injeção de código pois todo valor entrado deve ser verificado e tratado antes de jogar no banco.
  9. Omar~

    PHP - Orientação com Mensagem de Sucesso

    Acontece que seu caso não tem nada haver com PHP e sim com HTML/Javascript que se trata da parte do usuário e não do servidor. O que vai ter que fazer é: Ao submeter o formulário que terá de ser por AJAX algum elemento surge cobrindo a página assim sendo qualquer click será nesse elemento. Esse ou outro elemento mostra alguma indicação enquanto os dados não são enviados. O que você procura é feito nesse exemplo: https://github.com/Spell-Master/sm-web/tree/master/exemplos/modal%26ajax
  10. Omar~

    CSS @font-face

    /* font-family: Algum nome para representar-la no CSS. É aconselhavel que use o nome mesmo da fonte src: Local de armazenamento do arquivo. É aconselhavel que use somente arquivos ".ttf" */ @font-face {font-family: 'NOME_REPRESENTATIVO'; src: url('../fonts/ARQUIVO_DE_FONTE.ttf')} .fonte_personalizada { font-family: 'NOME_REPRESENTATIVO' /* tudo que que tiver esse classificador será com a fonte anexada */ } <h1 class="fonte_personalizada">Olá mundo</h1>
  11. Omar~

    Tratar caracteres acentuados

    Acho que a questão aqui possa ser: Não reinventar a roda.... var string = '%C3%A0,%C3%A1'; console.log( decodeURI(string) ); var outraString = 'Á é Í ó Ú'; console.log( encodeURI(outraString) );
  12. Omar~

    Comparação de horarios

    Acontece uma coisa o PHP só pode entregar dados já prontos para o usuário. Ou seja depois que ele renderizou o conteúdo ele não interage com o usuário (aliás nunca o php interage com o usuário). Nesse entendimento será necessário que o usuário recarregue o conteúdo para que o php possa processar novos dados e renderizar para o usuário. Assim sendo pode fazer assim no PHP <?php $horaAtual = "13:30:00"; // use date('H:m:s') $horaAnterior = "13:19:00"; // Não sei como vai obter isso... $minutoAtual = (int) explode(':', $horaAtual)[1]; $minutoAnterior = (int) explode(':', $horaAnterior)[1]; $meioTempo = ($minutoAtual - $minutoAnterior); if ($meioTempo <= 10) { // fica na página } else { // redireciona } Lembrando que pode também simplificar usando um COOKIE de 10 minutos de duração. Se você quiser que o redirecionamento aconteça de forma altomática, você tem que usar um script que funcione no software do usuário. setTimeout(function () { window.location.href = "https://endereco_qualquer"; }, 600000);
  13. Omar~

    Paginação com filtro

    No básico você terá que levar a informação da busca por GET teste.php <input type="text" name="pesquisar" /> request_teste.php /* Se houver na url "pesquisar" executa ele caso não, use dados do post É extremamente crucial que faça um tratamento dessa var porque contantemente ela vai se usada na query */ $busca = (isset($_GET['pesquisar']) ? urldecode($_GET['pesquisar']): $_POST['pesquisar']); /* Se houver na url "pag" use, caso não, use 1 */ $offset = (isset($_GET['pag']) ? $_GET['pag'] : 1); $query = "SELECT * FROM tabela WHERE coluna LIKE %{$busca}% LIMIT 100 OFFSET {$offset}"; Então os links de paginação ficam <a href="principal.php?link=teste.php&pesquisar=<?= urlencode($busca) ?>&pag=2">Página 2</a> <a href="principal.php?link=teste.php&pesquisar=<?= urlencode($busca) ?>&pag=3">Página 3</a> etc... Ou seja nada mais é que ao recarregar a página por algum link a informação do input é mantida sendo constantemente enviada pelo protocolo GET. Requer muito cuidado pois isso pode ser um tiro no pé se não fazer o correto tratamento dos dados, além que softwares através de um hardware bem potente+conexão extremante alta pode derrubar sua aplicação através de centenas de acessos por segundo. Então uma outra alternativa é você fazer paginação sem trocar de página fazendo somente uma requisição. Para essa finalidade desenvolvi um script para paginação se interessar veja: Outra forma também é usando JSON e localstorage que nada mais é que fazer a query armazenar os resultados em storage e quando mudar de página ao invés de fazer outra query compor o HTML com os dados armazenados.
  14. De qualquer forma vai precisar usar algumas regras de media. Então de uma estudada nesses artigos: https://developer.mozilla.org/pt-BR/docs/Web/API/Window/resize_event https://developer.mozilla.org/pt-BR/docs/Web/API/HTMLElement/offsetWidth https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth
  15. Omar~

    Transition Height não funciona em UL

    Algumas incoerências: 1 - No CSS a tag <ul> é transcrita depois do classificador secao-toggle mesmo em uma re-escrita o browser irá ignorar usar usando o que é de substituição no caso somente dados da <ul>. 2 - O classificador cnt-filtro-body já possui uma altura fixa, qualquer filho terá sua altura máxima herdada de seu pai, a não ser que o elemento pai possua alguma regra de overflow. 3 - Suspeito que queira uma espécie de animação de slide-dow/up o browser não executa o esperado você precisará do atributo transform. Obs.: Evite maximizar intervenções em tag's pre estipulando pois qualquer outra tag igual assumirá as mesmas características dificultando manutenção e updates futuros. É possível obter o efeito através de clonagem de elementos pois é assim que jquery executa sem interver no CSS, porém isso consome uma memória elevada demais, termos de MBs para executar algo que simplesmente com CSS em Bits você faz. Veja se é isso que pretende: HTML <button onclick="myFunction()">Clique aqui</button> <div class="cnt-filtro-body"> <ul> <li>a</li> <li>b</li> <li>c</li> </ul> </div> CSS .cnt-filtro-body { position: relative; overflow: hidden; height: 0; transition: .5s all ease-out } .cnt-filtro-body ul { list-style: none; pointer-events: none; position: absolute; z-index: 1; top: 0; left: 0; height: 160px; transform: translateY(-160px); transition: .5s all ease-out } .cnt-filtro-body.secao-toggle { height: 160px } .cnt-filtro-body.secao-toggle ul { pointer-events: auto; transform: translateY(0) } JAVASCRIPT function myFunction() { var element = document.querySelector('div.cnt-filtro-body'); element.classList.toggle('secao-toggle'); }
  16. Omar~

    [Resolvido] Problema com __autoload

    Remova o __autoload e nomeie sua função Então use a função spl_autoload_register enviando o nome da sua nova função como parâmetro. Exemplo: <?php function AutoLoad($Class) { // código do seu auto load aqui } spl_autoload_register('AutoLoad');
  17. Omar~

    executar function dentro de function

    Qual seria a situação? Por não vejo motivos disso acontecer. Se acontecer podemos entrar em loop infinito o que vai fazer com que não só software do usuário trave como pode levar a danos no hardware do mesmo. Se explicar melhor com certeza a um jeito melhor para proceder.
  18. Houve um equívoco meu, ao ler rápido: Mau interpretei pois validacao_usuarios é um método e não uma classe. Então certifique-se que a classe que tenha validacao_usuarios como método seja filha da classe DBModels.
  19. Bom não mecho com mysqli, mas olhando a classe validacao_usuarios que na verdade deveria ser nomeada como ValidacaoUsuarios, o erro mesmo está nessa linha: O método newConnection não pertence ao escopo da classe e sim no escopo da outra classe DBModels. O que você pode está fazendo é renomear corretamente a classe validacao_usuarios e declarar-la como sendo filha de DBModels, assim ela herda tudo que é protegido ou publico da classe mãe. class ValidacaoUsuarios extends newConnection { Não sei se vai dar certo porque como disse não mecho com msqli meu negócio é só PDO, mas o erro referido no título é porque algum objeto não pode chamar alguma função, justamente pelo que mencionei acima.
  20. Omar~

    Horário PHP

    A primeira coisa que veio em minha mente foi: Buscar o horário atual Usar a função explode para pegar a hora Se for maior que 23 ou 00 usando a função strtotime aumentar mair uma hora, assim prevendo para que não aconteça erros de data caso seja último dia de cada mês ou ano. Caso não seja 23 ou 00 usar a mesma data atual. Exemplo: <?php $hora = (int) explode(':', date('H:i:s'))[0]; if ($hora >= 23 || $hora < 1) { $novaData = date('Y-m-d H:i:s', strtotime('+1 hour')); } else { $novaData = date('Y-m-d H:i:s'); } var_dump($novaData);
  21. Omar~

    Regex para validação

    Não sei qual o senário aí, mas se for saber se uma string possui ou não caracteres especiais é só passar por combinação, para isso usamos a função match. Já para a quantidade de caracteres usamos o protótipo length. var stringA = "CaracteresComuns"; var stringB = "ãÉíÓú"; var stringC = "'\"\"@#$%¨&*()´+-=_[]{}º~^^?"; verificar(stringA); verificar(stringB); verificar(stringC); quantidade(stringA); quantidade(stringB); quantidade(stringC); function verificar(str) { if (str.match(/^([a-zÀ-ú]+)$/gmi)) { console.log('[' + str + '] Não tem caractere expecial'); } else { console.log('[' + str + '] Tem caractere expecial'); } } function quantidade(str) { var chars = str.length; console.log('[' + str + '] Possui [' + chars + '] de caracteres'); } Pessoalmente acho desnecessário qualquer tipo de filtro em senha do usuário, para que o ele possa usar letras/números/caracteres especiais de forma a garantir a segurança da sua senha conforme ele mesmo achar mais conveniente. Como sempre em um POST recebemos os valores por encodeURI o recebimento da mesma é seguro então logo antes de usar o valor da super global POST do valor do input uso a função htmlentities no PHP assim não sendo possível quebrar meu código PHP caso o valor do input tenha essa finalidade. Até impedindo um sql-inject só com o htmlentities, mesmo também sempre salvo senhas por password_hash. Bom se existe alguma forma de quebrar o código PHP antes da execução nunca vi nem ouvi falar.
  22. Omar~

    Relacionar resultados na busca

    Primeiro a situação porque é difícil de explicar: Preciso realizar uma query em duas tabelas uma de pergunta (tabela_A) outra de resposta (tabela_B) usando o operador LIKE Ambas possuem uma coluna para o conteúdo, a tabela_A possui também uma coluna para título. A tabela_b é possui uma coluna para se relacionar com a tabela_A. Então digamos que na tabela_A tenho a seguinte questão: tabela_A Título: João foi ao mercado? Conteúdo (pergunta): Alguém sabe se ele comprou arroz? tabela_B Conteúdo (resposta): Eu vi que joão comprou feijão. A consulta então seria pela palavra chave joão que poderia está presente nas 2 tabelas e em 3 colunas. Tentei da seguinte forma montar a query: SELECT tabela_A.id, tabela_A.titulo, tabela_A.pergunta, tabela_B.relacao, tabela_B.resposta FROM tabela_A INNER JOIN tabela_B ON tabela_A.id = tabela_B.relacao WHERE tabela_B.resposta LIKE '%joão%' OR ( tabela_A.titulo LIKE '%joão%' OR tabela_A.pergunta LIKE '%joão%' ) Os problemas são se eu passar o comando ON para relacionar a resposta com a pergunta: A query não retorna se não houver dados na tabela_B. A query só retorna resultado se for buscado dados pela coluna resposta (mesmo existindo a palavra chave nas colunas citadas da tabela_A). A questão é: Como eu realizaria essa consulta? Se a palavra chave for encontrado na coluna titulo, pergunta ou resposta, de forma a que eu irei listar a coluna_A. Exemplo: Pesquisou por Maria, no título não tem, na pegunta não tem, na resposta tem. Pesquisou por Luiz, no título tem, na pegunta não tem, na resposta não tem. Ou seja em qualquer um dos campos de ambas colunas que houver a chave de consulta deve retornar dados da coluna_A, mesmo que seja uma resposta na coluna_B. A forma que estou procedendo mesmo dando o resultado esperado não acho adequado acredito que uma query bastaria. Consultar tabela_A pelos campos tilulo e pergunta. Consultar tabela_B pelo campo resposta. Usar a função no PHP array_merge para unir ambos resultados em um único array. Remover os índices duplicados do array unificado.
  23. Omar~

    Javascript - Impedir de voltar a página anterior

    Acontece que isso não é possível, uma vez que você teria que está alterando o comportamento do software que o usuários estivesse usando. No máximo que pode está fazendo é armazenar uma sessão que se ele avançou ao acessar a página anterior novamente esbarraria numa checagem da sessão, porém isso não é válido se selecionar o botão return do browser porque ele teria que recarregar o conteúdo. Dependendo do seu cenário aí dar para simular isso sem nem mesmo redirecionar usando os recursos: https://developer.mozilla.org/pt-BR/docs/Web/API/XMLHTTPRequest https://developer.mozilla.org/en-US/docs/Web/API/History/replaceState
  24. Omar~

    console.log

    Na verdade exitem sim maneiras de fazer guardar dados como esse por código, porém não passa de "gabiarra" para realizar algo que não faz sentido algum fazer.
  25. Omar~

    [Resolvido] imprimir em php valor javascript

    É que você quer meter os pés pelas mãos complicando algo muito simples. Não precisa se desdobrar para extrair com o PHP alguma informação do javascript porque isso é impossível. Nem o PHP pode extrair alguma informação do javascript . Pense da seguinte forma: 1º - PHP (serve-side) processa e renderiza o DOM. 2º - Usuário (user-side) recebe o DOM renderizado pelo (serve-side). Ou seja quando no javascript (user-side) queremos algo do PHP (serve-side) apenas pedimos que o PHP renderize a informação/conteúdo que queremos. No contexto geral então quando você vai enviar algo de uma página para outra você envia a informação para o (user-side) e se algo precisa ser usado com essa informação ela é re-enviada para o (serve-side). Lógico que (serve-side) para trabalhar sozinho com os dados e entregar para o (user-side) as informações renderizadas assim como disse antes. Preparei 4 exemplos diferentes aqui para você ver qual a melhor alternativa. https://drive.google.com/file/d/1nE7cHow4FivW63JEZdGie6GygHXEe_HG/view?usp=sharing
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.