Jump to content

All Activity

This stream auto-updates     

  1. Past hour
  2. Today
  3. Motta

    Erro na Ordenação de Resultados - PHP + MySQL

    Veja se isto ajuda.
  4. Troque o INNER JOIN para LEFT JOIN na relação das tabelas usuarios com orderns. INNER JOIN retornas apenas se a relação existir nas duas tabela Já o LEFT JOIN retorna todos os usuarios e se tiver retorna as orderns SELECT * FROM usuarios LEFT JOIN orders ON usuarios.id_usuario = orders.id_usuario WHERE usuarios.email='$login' and usuarios.senha='$senha'
  5. Pelo o que entendi do seu código, você precisa usar mais um foreach após dar o explode no array. $list = explode(',', $value); // aqui o $value contem ['1,2'], aṕos o explode é criado outro array [1],[2] foreach($list as $row) { // esse foreach percore o array com os valores [1],[2] mysqli_query($conn, "INSERT INTO tb_alunos (id) VALUES ($row)"); }
  6. impera

    Comparar duas tabelas e mostrar valores distintos

    Acredito que seria possivel resolver apenas com SQL Primeiro usaria um INNER JOIN na tabela um com a tabela dois, para pegar os registros que estão nas duas tabelas. SELECT NF_D FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.VL_D = Tabela2.VL_S Após usaria o resultado da query acima, para pegar os registro que não se repetem. Da Tabela1 SELECT * FROM Tabela1 WHERE NF_D NOT IN (SELECT NF_D FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.VL_D = Tabela2.VL_S) Em seguida para a Tabela2 SELECT * FROM Tabela2 WHERE NF_S NOT IN (SELECT NF_D FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.VL_D = Tabela2.VL_S) Caso queira tudo em um só resultado pode se usar o UNION ( SELECT * FROM Tabela1 WHERE NF_D NOT IN (SELECT NF_D FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.VL_D = Tabela2.VL_S) )UNION( SELECT * FROM Tabela2 WHERE NF_S NOT IN (SELECT NF_D FROM Tabela1 INNER JOIN Tabela2 ON Tabela1.VL_D = Tabela2.VL_S) ) Não cheguei a testar o código, mas acredito que já te de um caminho.
  7. impera

    Erro na Ordenação de Resultados - PHP + MySQL

    Uma maneira de fazer seria usando o GROUP BY, para agrupar, no teu caso, os imóveis. Após isso tu pode usar para pegar o id maior o MAX(). Ficaria algo assim: SELECT MAX(imovel) FROM proposta GROUP BY imovel ORDER BY id DESC;
  8. Yesterday
  9. ShadowDLL

    Problema com organização de divs no rodapé

    Tente usar flexbox
  10. ShadowDLL

    Como pegar o retorno do ajax e mostrar na tela

    Disponível ^^
  11. Herberto Silva

    Posicionamento no registo com select

    Sim, exato, construção de uma grid de consulta.
  12. Motta

    Posicionamento no registo com select

    Sua dúvida está mais na linguagem front-end que está ou estará usando. Construnção de um grid ou algo assim.
  13. Olá, pessoal! Estou com problemas pra organizar meu rodapé. Quero deixar da seguinte forma: as informações de contato e um formulário lado a lado, e em baixo as informações padrões de um rodapé ("Copyright 2020 etc"). Eu criei uma div pras informações de contato e outra pro formulário, setei float: left e right pra eles respectivamente, mas a terceira div (Copyright) ficou no meio, não em baixo. Como resolvo? HTML: <footer> <div class="fcenter"> <div class="infos"> <p class="ftitulo">Águia Publicidade</p> <p class="finfos">Rua Treze de Maio, 191</p> <p class="finfos">Ed. Marc Jacob, sala 504</p> <p class="finfos">(91) 99182-4761</p> <p class="finfos">contato@aguiapublicidade.com</p> </div> <div class="contato"> <p class="ftitulo">Contate-nos</p> <form action="enviar.php" method="post" class="rodape"> <p class="formu">Nome: </p><input type="text"> </form> </div> </div> <div class="copyright"> <p class="rodape">&copy; Todos os direitos reservados. Desenvolvido por Arthur, designer da Águia&reg; Publicidade.</p> </div> </footer> CSS: /* footer settings */ footer { background-color: #303030; color: #fff; margin: 0px -8px 0px -8px; } .fcenter { width: 500px; margin: 0 auto; } .infos { float: left; } .contato { float: right; } Como ficou: Como eu gostaria que ficasse mais ou menos: http://miritigrafica.com.br/#faleconosco
  14. WagnerFilho

    Module Pattern Javascript

    Não sei se estou aplicando o conceito de javascript modular corretamente, portanto preciso de ajuda! Eu separei os arquivos js por responsabilidades. Cada arquivo será encarregado para uma determinada função. Estou carregando estes arquivos da seguinte forma: <html> <head> </head> <body> <div id="app-info"> <span id="app-name">name</span> </div> <script src="controllers/controllerExample.js"></script> <script src="resources/ajaxApp.js"></script> <script src="models/modelExample.js"></script> <script src="app.js"></script> </body> </html> observação: Eu não quero ir para o requiresJS. sem que antes eu tenha entendido como realmente funciona o modular pattern Além disso, eu quero que o retorno do ajax seja atribuído à um objeto global, podemos chama-lo de ObjectApplication para que em qualquer lugar da aplicação eu possa acessa-lo ? Como posso fazer isto ? Então tenho alguns arquivos js. app.js controllers / controllerExample.js models / modelExample.js resources / ajaxApp.js app.js let ObjectApplication = {}; ;(function( window, document, undefined ) { 'use strict'; function app() { var $private = {}; var $public = {}; $private.privateVar = 'private var'; $public.publicMethod = function() { return 'Init'; }; $private.privateMethod = function() { return 'Private method'; }; return $public; } window.MyGlobalObject = window.MyGlobalObject || {}; window.MyGlobalObject.app = app(); })( window, document ); MyGlobalObject.controllerExample.publicMethod(); console.log(objectApplication.name); controllerExample.js ;(function( window, document, undefined ) { 'use strict'; function controllerExample() { var $private = {}; var $public = {}; $private.privateVar = 'private var'; $public.publicMethod = function() { return MyGlobalObject.modelExample.publicMethod(); //return 'Init'; }; $private.privateMethod = function() { return 'Private method'; }; return $public; } window.MyGlobalObject = window.MyGlobalObject || {}; window.MyGlobalObject.controllerExample = controllerExample(); })( window, document ); modelExample.js ;(function( window, document, undefined ) { 'use strict'; function modelExample() { var $private = {}; var $public = {}; $private.privateVar = 'private var'; $public.publicMethod = function() { buildAppInfo(); //return 'Init in Model'; }; $private.privateMethod = function() { return 'Private method'; }; return $public; } window.MyGlobalObject = window.MyGlobalObject || {}; window.MyGlobalObject.modelExample = modelExample(); })( window, document ); ajax let buildAppInfo = () => { let url = 'app.json'; let xhr = new XMLHttpRequest(); xhr.open('GET', url, true); xhr.onreadystatechange = function() { if (xhr.readyState == 4) { if (xhr.status = 200) app = JSON.parse(xhr.responseText); console.log(app); } } xhr.send(); };
  15. Após alguns ajustes consegui encontrar uma solução. Após ter criado uma variável chamada "lista" para criar um objeto, fiz um ajuste no evento afterSelect do Typeahead onde após selecionar uma opção dentro do input text o evento Typeahead envia um valor relacionado ao item para dentro da div #imagem. Esta solução pode ser vista em funcionamento aqui. Segue o script ajustado: <script type="text/javascript"> var produtos; var lista = {}; // cria o objeto $ ( function () { $('#categoriaFK').on('change', function(){ var queryID = $(this).val(); $.ajax({ url:"fetch.php", method:"POST", data: { categoria: queryID }, dataType:"json", success:function(data) { console.log(data); $("#produtos").val (''); produtos = data; } }); }); $('#produtos').typeahead({ source: function ( query, result ) { result ( $.map(produtos, function (item) { return item.nomeProduto; } )); }, /* O ajuste foi feito aqui no evento afterSelect */ afterSelect: function(data) { $.each(produtos, function(idx, item){ lista[item.nomeProduto] = item.imagem; }); var img = lista[data]; $('#imagem').html(img); }, }); }); </script> Por fim, essa foi a solução que consegui encontrar. Caso alguém sugira uma modificação mais otimizada fiquem a vontade. Valeu!
  16. Herberto Silva

    Posicionamento no registo com select

    Olá se efetuar um select para a data atual ($current_date = date('Y-m-d');) apenas apresenta o(s) registo(s) com essa data. Certo? Pretendo uma consulta que verifique a existência dessa data e a consulta fique posicionada no(s) registo(s) dessa data: 18/01/2020 19/01/2020 20/01/2020 <- 21/01/2020 22/01/2020 23/01/2020
  17. Está ocorrendo um erro em meu comando MySQL na ordenação dos resultados. O código é o seguinte: $sql_imos4 = "Select DISTINCT imovel FROM propostas ORDER BY id DESC"; $exe_imos4 = mysqli_query($conexao, $sql_imos4); O objetivo é listar uma única vez um imóvel com proposta, mesmo que haja dois ou mais registros, sempre ordenado mais recente. O que está ocorrendo quando o imóvel tem mais de uma proposta cadastrada, a ordenação está sendo feita pelo ID da proposta mais antiga. Exemplo: imóvel ref. 4528 tem duas propostas, sendo que a mais recente tem o ID 235 porém aparece na listagem abaixo do imóvel ref. 4325, que tem uma só proposta e ID 230. O resultado deveria estar invertido neste caso. Onde pode estar o erro? Agradeço a ajuda.
  18. Motta

    Posicionamento no registo com select

    O que seria "posicionar" e "manter disponíveis" ?
  19. Fala @jeskakal, eu escrevi um post mostrando as maneiras de alterar a URL base do WordPress, acredito que possa te ajudar.
  20. Herberto Silva

    Posicionamento no registo com select

    Olá Estou com uma dificuldade em elaborar um select de forma que verifique um campo data, (com uma atribuição de uma variável $current_date = date('Y-m-d');) caso exista essa data o select posicione-se no registo, neste caso no registo que contém a data igual a $current_date, mantendo os restantes registos da tabela disponíveis
  21. As 7 linguagens de programação que você deve aprender em 2020
  22. Last week
  23. Jefferson andre

    Como pegar o retorno do ajax e mostrar na tela

    Muito obrigado, vou estudar suas informacoes.
  24. Olá, gostaria de saber qual a melhor maneira de selecionar e verificar a senha hash(senha) em um banco de dados e comparar com a senha inserida pelo usuário em um formulário de login. É mais adequado armazenar no BD o salt ? No exemplo abaixo eu criei o hash da senha antes de selecionar no banco: <?php include('conf.php'); $email = 'lala@123.com'; $senha = 'lala.123'; $custo = '08'; $salt = 'Cf1f11ePArKlBJomM0F6aJ'; $hash = crypt($senha, '$2a$' . $custo . '$' . $salt . '$'); $query_select = "SELECT email, password FROM usuarios WHERE email = '$email' AND password = '$hash'"; $select = mysqli_query($conexao,$query_select); if (mysqli_num_rows($select) == 1) { echo "Login Permitido"; } else { echo "Login ou senha invalidos"; } ?> Já neste exemplo eu selecionei o hash no banco para depois comparar com a senha inserida no formulário utilizando o password_verify(): <?php #----------------- INCLUDING FILE --> "conf.php" include('conf.php'); if (isset($_POST['submit'])) { $email = mysqli_real_escape_string($conexao, $_POST['email']); $password = mysqli_real_escape_string($conexao, $_POST['password']); $query_select_email = "SELECT email FROM usuarios WHERE email = '$email'"; $select_email = mysqli_query($conexao,$query_select_email); $query_select_password = "SELECT password FROM usuarios"; $select_password = mysqli_query($conexao,$query_select_password); while($array = mysqli_fetch_array($select_password)) { $logarray = $array['password']; if (password_verify($password, $logarray) && mysqli_num_rows($select_email) == 1) { echo "Login permitido"; } } } ?> Aceito qualquer dica relacionado a segurança e para melhorar o código, desde já agradeço.
  25. ShadowDLL

    Como pegar o retorno do ajax e mostrar na tela

    Se você deseja usar uma mesma funcionalidade para mais de um elemento, então deverá utilizar "classe", não "id". Isso ocorre porque os IDs devem ser exclusivos na página, e por sua vez, se houver mais que um, o JQuery, selecionará o primeiro e ignorar o restante. Segue teste, abaixo: CÓDIGO: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title> EXAMPLE </title> <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script> </head> <body> <h2>DOIS ELEMENTOS COM O MESMO ID</h2> <input type="text" id="f_test" /> <input type="text" id="f_test" /> <button id="btn_1">Preencher</button> <br /> <h2>DOIS ELEMENTOS COM A MESMA CLASSE</h2> <input type="text" class="s_test" /> <input type="text" class="s_test" /> <button id="btn_2">Preencher</button> <br /> <script type="text/javascript"> // PARA OS ID's $ ('#btn_1').on ('click',function() { $("#f_test").val ('Preenchido!'); }); // PARA AS CLASSES $ ('#btn_2').on ('click',function() { $(".s_test").val ('Preenchido!'); }); </script> </body> </html>
  26. José Peixoto

    Como fazer subconsultas: um passo a passo (Parte II)

    Motta, foi porque publiquei no ambiente errado. Perdão! Era pra ser como artigo. Como eu deleto essa publicação? não achei! Obrigado desde já!
  27. Jefferson andre

    Como pegar o retorno do ajax e mostrar na tela

    Muito obrigado pela ajuda, vou estudar o link que voce me passou. Agora o retorno esta preenchendo algumas divs como a $("#dados2") mas os campos de input nao com a mesma id. vou tentar entender o motivo. Em VFP existe comandos que atualizam campos individuais da tela por ex. thisform.pageframe1.page2.nomedolabel.refresh Imagino que deva existir algo assim para html ou no proprio ajax mas desconheço. Grato mais uma vez pelo suporte
  28. Olá pessoal, eu tenho um sistema de comentários que quando um "player" preenche esse comentário, ele vai direto para pagina inicial, funciona como um feedback, só que ele pode usar isso várias e várias vezes, eu queria que ele usasse apenas uma vez e não pudesse mais utilizar, sendo assim só seria possível usar uma vez. Ou q só poderia usar se tivesse x quantidades de pontos no banco de dados(eu tenho uma coluna com pontos) e a cada vez que ele usasse esse formulário(comentário), ele perderia 1 ponto,e quando não tivesse mais pontos, ele não poderia comentar. Alguém tem alguma ideia de como posso fazer isso? e qual funções utilizar? VALEUU!!!
  29. Motta

    Como fazer subconsultas: um passo a passo (Parte II)

    Parte disto ficou como tópico , parte como Status , confuso.
  1. Load more activity
×

Important Information

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