Jump to content

SrTunes

Members
  • Content count

    76
  • Joined

  • Last visited

Community Reputation

1 Comum

About SrTunes

  1. Pessoal, consegui resolver uma parte do problema assim: Peguei uma sugestão na internet de javascript assim: $(document).ready(function(){ $('#seletor').change(function(){ $('#lista').load('teste_lista.php?seletor='+$('#seletor').val()); }); }); Pelo que entendi essa função a cada mudança da seleção ela busca o "value" do option selecionado e envia via GET para a página "teste lista.php" que criei para executar a pesquisa e retornar um resultado dentro da <div> lista. Ai o código ficou assim: <script type="text/javascript"> $(document).ready(function(){ $('#seletor').change(function(){ $('#lista').load('teste_lista.php?seletor='+$('#seletor').val()); }); }); </script> <select id="seletor"> <option value='Maca'>Maçã</option> <option value 'Laranja'>Laranja</option> <option valeu='banana'>Banana</option> </select> <div id="lista"></div> Ai aconteceu outro problema: Quando tento colocar nesta lista um nome composto que por exemplo tenha o value = ""fruta do conde" (com espaços), meu arquivo "teste lista.php" não recebe nada. Abaixo mostro como esta o arquivo php: <?php require_once '../conexao.class.php'; $con = new conexao(); // instancia classe de conxao $con->connect(); // abre conexao com o banco mysql_query("SET NAMES 'utf8'"); $idseletor= $_GET['seletor']; if($idSeletor == 'Fruta do Conde'){ $consulta = mysql_query("SELECT `tipos` FROM fruta_do_conde;"); // query que busca os dados da tabela de fruta do conde while($campo = mysql_fetch_array($consulta)){ // laço de repetiçao que vai trazer os resultados da consulta } if($idSeletor == 'Maçã'){ $consulta = mysql_query("SELECT `tipos` FROM maca;"); // query que busca os dados da tabela de maca while($campo = mysql_fetch_array($consulta)){ // laço de repetiçao que vai trazer os resultados da consulta }... ... echo "<label for='tipos'>Tipos:</label> <select name='tipos_frutas'> <option>Selecione a fruta:</option>"; while($campo = mysql_fetch_array($consulta)){ echo "<option>".$campo['tipos']."</option>"; } echo "</select>" ?> Minha questão é: Por que quando o "value" vem com espaço meu arquivo "teste lista.php" não recebe nada, pois quando não tem espeço ele recebe? Sei que poderia colocar traço ao invés de espaço, mas gostaria de receber o valor com espaços.
  2. Bom dia amigos, Estou com um dificuldade com um formulário html e preciso entender melhor o mecanismo do javascript. Podem me ajudar? Seguinte: Tenho em um formulário um campo de select com 3 opções: <select id="seletor"> <option>Maçã</option> <option>Laranja</option> <option>Banana</option> </select> Para cada opção que o usuário escolher deve ser executado um código php de pesquisa em banco de dados diferente para popular o próximo select no mesmo formulário com o código php seguinte: <php $consulta = mysql_query("SELECT `tipos` FROM maca;"); // query que busca os dados da tabela de maçãs while($campo = mysql_fetch_array($consulta)){ // laço de repetiçao que vai trazer os resultados da consulta ?> ou <php $consulta = mysql_query("SELECT `tipos` FROM banana;"); // query que busca os dados da tabela de banana while($campo = mysql_fetch_array($consulta)){ // laço de repetiçao que vai trazer os resultados da consulta ?> ou <php $consulta = mysql_query("SELECT `tipos` FROM laranja;"); // query que busca os dados da tabela de laranja while($campo = mysql_fetch_array($consulta)){ // laço de repetiçao que vai trazer os resultados da consulta ?> Como faria isso com javascript? Obrigado a todos.
  3. E ae Michael! Cara, depois de tanto tempo estou de volta. Seguinte, fica tranquilo que eu sei como funciona as ferramentas de desenvolvedor de página da web. (Valeu mesmo) Caaaara, você fez quase todo o script pra mim. rs Muitíssimo obrigado. Mas vamos lá, tudo que me explicou aqui foi de extrema valia, linha por linha. Você é muito bom, poderia dar aulas, se já não dá. rs Como falei antes, como não tenho conhecimento em javaScript, é exatamente lá que estou apanhando para entender. Osso. Já saquei como é a requisição get com json e a sua implementação faz o trabalho da requisição certinho. Entendi também como funciona a parte do this.valor, perfeito. a parte do: $.getJSON('config/busca.php', { busca: valor } busca e responde com o valor certinho. Agora como eu pego o dado da resposta que veio assim: {"erro":false,"dados":{"descricao_item":"Cisco SFP-GE-T"}} e mando para o campo de id="descricao"? Como funciona a lógica?
  4. Bom dia Michael! Cara, que aula você deu agora. Ajudou demais aqui. Já quero te agradecer muito, pois esclareceu muita coisa pra mim com relação a JQuery. Fiquei com duvida em alguns pontos da sua explicação, pois vi que o que você postou modifica um pouco o que tinha feito. Olha só, neste código que você fez: $(function(){ var availableTags = <?php echo json_encode($dados); ?>; $("#tags").autocomplete({ source: availableTags, change: function () { // aqui vem a mágica var valor = this.value; if (!$.trim(valor)) { return; } $.getJSON('/busca.php', { busca: valor }, function (dados) { $('#descricao').val(dados.resultado); // ou seja lá o que for... }); } }); }); No código acima eu estou enviando via get a variável "valor", estou certo? Mas o que tem nesta variável? Bem, antes de ler seus post estava fazendo algo assim: $( function(){ var availableTags = [<?php echo $dados?>]; $( "#tags" ).autocomplete({ source: availableTags, change: autoCompleteChanged }); } ); function autoCompleteChanged( event, ui){ var valorItem = $( "#tags").val(); $( "form" ).submit(function( event ){ event.preventDefault(); $.ajax({ url : 'config/funcoes.php', data : {pnitem : valorItem}, type : 'get', dataType : 'json', success : function(data){ $( "#desc").val(data.valor); }, }); }); } No código que fiz o que tinha entendido era que "data" era onde eu inseria o dado que enviaria para a function e dela enviaria via get para o código php. (Meu código não funcionou). Fiz duas funções, mas tudo em uma função, como você fez achei bem melhor. Não encontrei, no código que me apresentou, a ligação entre o dado do primeiro campo com o dado do segundo. Por exemplo, veja se o que entendi esta correto: a variável "availableTags" recebe uma lista do banco de dados, quando começo a digitar no campo 1 ele me dá as opções. Quando escolho uma delas, esse valor escolhido é recebido pela variável valorItem, que no ajax estaria no "data" com o nome de "pnitem". Este data vai para a function, que trataria no codigo php a consulta e me retornaria um valor. Sabe onde errei? Será que consegui explicar? :D Muito obrigado mais uma vez.
  5. Bem, eu não consegui ainda entender como eu pego o valor do input 1 e trabalho em uma pesquisa DB para que me retorne o valor da pesquisa no outro input sem refresh. Até agora o maximo que consegui foi replicar o valor do input 1 para o input 2 automaticamente com o change, mas não é isso que quero
  6. Muito obrigado pela ajuda. A dica o evento change achei bem interessante, só que preciso compreende-la melhor para saber como aplicar. Então, algumas dúvidas: Ainda não compreendi a api jQuery.getJSON, mas quando me disse que terei uma "pagina", ai fiquei mais confuso. Vou precisar criar uma pagina em branco para receber o resultado? Pensei em algo como outra função com onchange, assim que o valor do input é selecionado, o segundo input através de da segunda função percebe a mudança do primeiro e pega o valor que esta lá, aí penso que poderia chamar uma função php para realizar a pesquisa no BD e retornar o valor para o input atravé de jQuery mesmo. Se puder me dar mais algum norte, agradeço.
  7. Boa tarde amigos, sei que há vario tópicos parecidos com esse, com praticamente a mesma dúvida, mas com diferentes resoluções. Mas o motivo de eu ter aberto um tópico novo foi por causa tenho duvida no meu código que não encontrei resposta nos outros tópicos. De antemão informo que meu conhecimento em javascript é muito limitado, por isso peço encarecidamente a paciência e compreensão dos colegas e dede já agradeço a todos. Muito obrigado. Bem, o problema: Tenho um form php com dois campos apenas: "PN do item" e "Descrição". Para o primeiro campo de input (PN do Item), com a ajuda da internet, implementei um script que a medida que digito ele faz uma busca no BD e autocompleta. Até ai beleza. O que estou querendo agora é, aproveitando a minha estrutura, fazer com que ao escolher o item do primeiro campo de input, o segundo campo de input me retornasse do BD a descrição deste item automaticamente sem refresh da página. Isso é possível? Abaixo deixo meus scripts: <?php require_once 'config/conexao.class.php'; require_once 'config/crud.class.php'; $con = new conexao(); // instancia classe de conxao $con->connect(); // abre conexao com o banco $consulta = mysql_query("SELECT pn_item FROM descricao_de_itens"); //Busca da tabela descricao_de_itens o campo pn_item para preencher as opções no form $dados =""; if(mysql_num_rows($consulta) > 0){ while($row = mysql_fetch_assoc($consulta)){ $dados = $dados."\"".$row["pn_item"]."\","; } } $dados = substr($dados,0,-1); // retira a última virgula ?> <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <link rel="stylesheet" href="http://localhost/controle_estoque/css/jquery-ui.css"> <script src="http://localhost/controle_estoque/js/jquery-3.4.1.js"></script> <script src="http://localhost/controle_estoque/js/ui/jquery-ui.js"></script> <script> $( function(){ var availableTags = [<?php echo $dados?>]; $( "#tags" ).autocomplete({ source: availableTags }); } ); </script> <title></title> </head> <body> <form action="" method="post"><!-- formulario carrega a si mesmo com o action vazio --> <div class="ui-widget"> <label for="tags">PN do Item:</label> <input id="tags" type="text" name="nome"/> <br /> <br /> </div> <label>Descri&ccedil;&atilde;o:</label> <input type="text" name="descricao"/> <br /> <br /> <input type="submit" name="cadastrar" value="Cadastrar" /> </form> </body> </html> <?php $con->disconnect(); // fecha conexao com o banco ?>
  8. E ai Motta, beleza. Então, nas imagens que anexei antes mostra todas as tabelas que tenho, tudo bem que é um print, mas a estrutura das tabelas são aquelas. Tem a tabela joao.silva e tem as tabelas projeto1, projeto2, projeto3 e projeto4. Na outra imagem, que anexei depois, tem o tipo de resultado da pesquisa que quero fazer com aquele comando. Desculpe a ignorância. mas o que mais falta para que eu consiga me fazer entender?
  9. Será que alguém sabe onde estou errando?
  10. Quero que minha pesquisa me traga isso que esta em anexo:
  11. Ok, joao.silva é uma tabela, esta tabela lista os projetos que o João esta envolvido. Em cada linha da tabela joao.silva tem o nome de uma tabela de projeto, do jeito que esta na imagem em anexo. O que quero é listar todas as atividades do João em cada projeto, que é a ligação em vermelho que esta na imagem. No exemplo do código, tentei pegar os dados apenas do projeto 1, por isso fiz o where id=1. Fiz o esquema no excel, mas o real é em mysql mesmo.
  12. É exatamente o que quero, o select da subquery será o nome da tabela da query principal. Eu quero pegar o primeiro dado da coluna projetos_usuario ta tabela joao.silva e usar na query principal.
  13. Desculpe, achei que sua primeira resposta fosse uma pergunta, ai respondi que a tabela joao.silva tinha duas colunas, uma com o nome de "id" e outra com o nome de "projetos_usuario"
  14. Não, tem a coluna id também.
  15. Bom dia amigos, estou com um problema para fazer uma pesquisa e gostaria da ajuda de vocês. Seguinte, tenho uma tabela com o nome de um usuário, por exemplo joao.silva, esta tabela guarda a lista de todos os nomes de projetos em uma coluna, cada projeto tem uma tabela de atividades. nessa tabela de atividades o usuário joão tem atividades vinculadas a ele. A pesquisa que quero fazer é buscar em todas as tabelas de projetos as atividades ligadas ao joao.silva. Tentei fazer assim para testar pegar o 1º projeto da lista: SELECT nome_ativ, user_ativ, dtprev_ativ, prev_ativ FROM (SELECT projetos_usuario FROM `joao.silva` WHERE id = 1) AS pr usando o phpmyAdmin, mas ele me retorna um erro: #1054 - Unknown column 'nome_ativ' in 'field list' O problema é que essa coluna existe. Acredito que seja alguma coisa que falta na subquery. Alguém pode me ajudar? Aceito sugestões. Muito obrigado.
×

Important Information

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