Jump to content
Fórum Script Brasil

lowys

Membros
  • Posts

    858
  • Joined

  • Last visited

Everything posted by lowys

  1. https://www.w3schools.com/html/html_elements.asp A recomendação dos mantenedores do html, é: nunca se esqueça da tag de fechamento. As exceções são self-closing tags Tags que dispensam a tag de fechamento (elas não precisam de marcação de onde começam e onde terminam, elas começam e terminam em si mesmas):
  2. https://codepen.io/mobifreaks/pen/AMjEKw Aparentemente está certinho. certifique-se de que o input:file é o único #foto_logo
  3. Olá! Não entendi. O php só funciona no servidor. no browser do cliente, só chega html, css e js (que são linguagens frontend - interpretadas pelo browser) sem css, html e js, seu site/sistema provavelmente será apenas texto. Mas, repetindo: Não entendi o que precisa/pretende
  4. Mas porque tá salvando como string? no mysql tem uma coluna json justamente pra salvar json e você pode pesquisar pelo índice json que precisar: https://dev.mysql.com/doc/refman/8.0/en/json.html
  5. A senha é uma string. Strings devem ficar entre aspas: $sql = "UPDATE usuarios SET senha = '$nscriptografada' WHERE email = '$email'";
  6. Esta é uma boa idéia: https://www.php.net/manual/en/function.fopen.php
  7. Uma possível solução: Ao invés de usar while, use fecth_all com foreach veja o exemplo em: https://www.php.net/manual/en/mysqli-result.fetch-all.php $notas = $result0->fetch_all(MYSQLI_ASSOC); $produtos = $result1->fetch_all(MYSQLI_ASSOC); foreach ($notas as $index => $row) { ... dentro de um único foreach, pode-se usar os resultados de $notas e $produtos
  8. Há um overflow:hidden onde o valor é exibido?
  9. sugestão com js <script> document.querySelector('a[href="#qualidade"]').addEventListener('click', (e)=>{ document.querySelector('#ipqualidade').focus() }) </script> ou <script> document.querySelector('a[href="#qualidade"]').onclick = ()=>{ document.querySelector('#ipqualidade').focus() } </script>
  10. A partir do momento em que esse json for um array php, itere com foreach: https://www.php.net/manual/en/control-structures.foreach.php
  11. Se o seu js não vai gerar o html, o ideal é que fique no final do body. Conforme recomendam os consolidados frameworks e libs js Até mesmo as best practices do developers.google guides Assim sendo, use no final do corpo da página, tranquilamente.
  12. Entendi. Eu não uso excel. Mas em 94, ele era um aplicativo apenas desktop
  13. Por quê não usa o excel gratuito da google? Aparentemente são só benefícios. É colaborativo (pode-se convidar outras pessoas pra editar a planilha simultaneamente) Vais ter um backup automático e gratuito na nuvem https://docs.google.com/spreadsheets
  14. Olá! Não foi possível executar seu script / visualizar o resultado. Se puder, cole um screenshot pra gente entender o resultado.
  15. Boa noite! Quais colunas o sr. quer somar?
  16. não. Mas é possível colocar essa imagem dentro de um elmento html - div ajustar a imagem à div e usando medidas de porcentagem, o sr. pode posionar uma div dentro da outra aí basta calcular em quantos % da margem esquerda e em quantos % da margem superior o trecho de imagem vai estar quando for redimensionada
  17. Não é necessário economizar nos nomes das variáveis. Quando escrevemos código, escrevemos para que humanos leiam. Depois que o interpretador fizer o trabalho dele, será código para que a máquina leia. Pode usar variáveis mais semânticas, para que o sr. mesmo ou outrem que venham a manutenir seus scripts/sistemas, tenham a possibilidade de entender o que foi feito. O sr. sabe que existe um input:date no html? https://developer.mozilla.org/pt-BR/docs/Web/HTML/Element/input/date segue sugestão/exemplo <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Calendar</title> <style> hr { margin: 28px 0; } </style> </head> <body> <div id="caldiv"></div> <hr /> <input type="date" /> <script> function calendar() { table = `<table><tr> <tr><td>Dia:<td><select id='sldia'>` for (day = 1; day <= 31; day++) { table += '<option>' + day + '</option>' } table += "</select><td><select id='slmes'>" months = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'] for (month of months) { table += '<option>' + month + '</option>' } table += "</select><td><select id='slano'>" years = ['2020', '2021', '2022'] for (year of years) { table += '<option>' + year + '</option>' } table += '</select><td><input type=submit value=Confirmar onclick=setDate()></table>' caldiv.innerHTML = table resetDate() } calendar() function resetDate() { hoje = new Date() sldia.selectedIndex = hoje.getUTCDate() - 1 slmes.selectedIndex = hoje.getUTCMonth() slano.value = hoje.getUTCFullYear() } function setDate() { diaescolhido = sldia.value mesescolhido = slmes.value anoescolhido = slano.value caldiv.innerHTML += 'o dia escolhido foi ' + diaescolhido + '/' + mesescolhido + '/' + anoescolhido + '<br>' resetDate() } document.querySelector('input[type="date"]').addEventListener('change', (e) => { caldiv.innerHTML += `<p>A data escolhida no <b>input:date</b> foi: ${e.target.value}</p>` }) </script> </body> </html> Com o input date, já se evita datas impossíveis como 31/02/2020 Note que, uso o s.o. e o browser em inglês Quem usa em pt-br, os nomes dos meses, formato da data e etc tb vão aparecer em pt-br
  18. O "jeito" de programar em php é diferente do "jeito" do js Se o sr. está precisando definir uma variável global para ser usada em várias funções php, talvez haja algo a ser repensando na sua lógica php. Mas tb podes usar anonymous closure functions assim: $externalString = 'String Externa'; $theFunction = function ($string) use ($externalString) { print_r($string. ' ::-> ' . $externalString); }; $theFunction('Param'); Leia em: https://www.php.net/manual/en/functions.anonymous.php Mas precisa ser analisado. Talvez, uma abordagem em paradigma Object Oriented seja mais adequado.
  19. Esse trecho html:5 foi gerado automaticamente pelo emmet, no vscode. Pode-se fazer as edições/customizações necessárias.
  20. Segue sugestão com separação de responsabilidades: frontend <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Editable TD</title> <style> table { border-collapse: collapse; width: 100%; } table, td, th { border: thin solid #aaa; padding: 6px 12px; } td:first-child { text-align: center; } tr:nth-child(odd) td { background-color: #ddd; } .p-12 { padding: 12px; } .text-end { text-align: right; } main { width: 165px; position: relative; margin: 0 auto; } </style> </head> <body> <main> <table> <thead> <tr> <th>Quant</th> <th>Verdura</th> </tr> </thead> <tbody></tbody> </table> <div class="p-12 text-end"> <button>Enviar</button> </div> <article></article> </main> <script> const Table = document.querySelector('table') const Tbody = Table.querySelector('tbody') const verduras = [ { name: 'berinjela', quant: 0 }, { name: 'beterrada', quant: 2 }, { name: 'batata', quant: 0 } ] for (const { name, quant } of verduras) { Tbody.innerHTML += `<tr><td name='quant' contenteditable='true'>${quant}</td><td contenteditable='true' name='name'>${name}</td></tr>` } document.querySelector('button').addEventListener('click', async (e) => { todos = Tbody.querySelectorAll('td[name]') const fData = new FormData() for (const td of todos) { console.log('td.name :>> ') fData.append(`item[${td.getAttribute('name')}][]`, td.innerHTML) } const response = await fetch('products.php', { method: 'POST', body: fData }) const body = await response.text() document.querySelector('article').innerHTML = body }) </script> </body> </html> Backend <?php echo '<pre>$_POST: '; print_r($_POST); echo '</pre>'; Desta forma, a própria td é editável.
  21. Bom dia! Se quiser construir você mesmo essa calculadora, comece estudando javascript. https://jstherightway.org
  22. Olá! Segue sugestão: <?php // defina a view padrão $view = 'home'; // se existir alguma querystring if (!empty($_SERVER['QUERY_STRING'])) { // então a queryString será a view $view = strtolower($_SERVER['QUERY_STRING']); } // define o path para as views a serem incluídas $viewFile = 'views/' . $view . '.php'; ?> <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Pseudo Router</title> </head> <body> <div id="menu"> <h3> <center>MENU</center> </h3> <nav> <a href="?usuarios" class="botao01">Usuários</a> <a href="?pessoas" class="botao01">Pessoas</a> <a href="?estatisticas" class="botao01">Estatísticas</a> <a href="?aniversarios" class="botao01">Aniversários</a> <a href="sair.php" class="botao01">Sair</a> </nav> <br> </div> <div id="corpo"> <?php // verifica se o arquivo da view existe if (is_file($viewFile)) { //se existir, carrega a view include $viewFile; } else { // se não existir, carrega uma mensagem de não encontrada include 'views/not-found.php'; } ?> </body> </html> Segue projeto zipado aqui: https://we.tl/t-ojklaS4Zb4
×
×
  • Create New...