Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17743
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Base de autocomplete com JSON e PHP

02-04-2010 17:07

Esse script é uma base que montei para pegar dados de outro documento, dados em array, e passar para inputs na página principal, via JSON.

O script é bem simples e está comentado

* Não esqueça de chamar a biblioteca jQuery no documento

Esse é o documento principal.html
Nele está o js e o form que receberá os dados

<script src="jquery.js"></script> <script> $(document).ready(function() { $("#nome").blur(function() {   // atribuimos o nome a var var nome=$("#nome").val();   // carregamos o JSON passando o nome $.getJSON("dados.php", {name:nome}, function(json){   // pegamos o id obtido na página acima e passamos para o input $("#id").val(json[0].id);   // pegamos o sobrenome obtido na página acima e passamos para o input $("#sobrenome").val(json[0].sobrenome); });   }); }); </script>


<form action="" method="POST"> coloque o nome: <input type="text" id="nome" name="nome" value=""><br> id: <input type="text" id="id" name="id" value=""><br> sobrenome: <input type="text" id="sobrenome" name="sobrenome" value=""><br> </form>

O script carrega os dados de um documento chamado: dados.php, segue abaixo

<?php $array = Array(); extract($_GET); if($name=="joao") { $array[] = Array("id" => "1", "sobrenome" => "Maria"); } $json_encode = json_encode($array); echo $json_encode; ?>

Qualquer dúvida só postar
0
A melhor hospedagem para o seu site HostGator!
 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17743
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Base de autocomplete com JSON e PHP

25-06-2011 12:39

Vou postar aqui uma nova versão do script de auto completar campos do formulário com JSON, jQuery e MySQL.

Nessa versão, usarei um select para enviar "id" para outro documento, para recuperar dados da consulta MySQL e envia-las para input text.

Esse abaixo será o documento de teste, onde ficará o select, para alterar observe os comentários no script

<script src="jquery.js"></script> <script> $(document).ready(function() { $("#select").change(function() { // quando o select foi mudado, alterado as opções   // atribuimos o nome a var var id=$("#select").attr("value"); // pegando a opção selecionada no select   // estamos enviando aqui para teste2.php o id, que está selecionado no select $.getJSON("teste2.php", {id:id}, function(json){   // aqui podemos pegar o id que vai ser mandado na consulta // descomente a linha se for usar //$("#id").val(json[0].id);   // aqui pegamos o nome que vai ser gerado na consulta $("#nome").val(json[0].nome); });   }); }); </script>


<form action="" method="post"> valor <!-- aqui é o select, que quando a opção trocar, vai mandar o valor para teste2.php //--> <select name="select" id="select"> <option></option> <option value="1">1</option> <option value="2">2</option> <option value="3">3</option> </select>   <!-- esse input abaixo vai receber o nome da consulta mysql, com base no id nome //--> dados: <input type="text" id="nome" name="nome" value=""><br> </form>

AGORA A CONSULTA - teste2.php

<?php // dados da conexão $conexao = mysql_connect("localhost", "login", "senha") or die(mysql_error()); $db = mysql_select_db("bd"); extract($_GET); // consulta // note que uso $id para obter os dados, porque ele que mando pelo select $selec = mysql_query("SELECT id, nome FROM minhatabela WHERE id='$id'"); while($campos=mysql_fetch_array($selec)) { extract($campos); $Array = Array(); // PARTE QUE ENVIA OS DADOS PARA O/OS INPUTS TEXT // NOTE QUE NO ARRAY USO O id E nome, AMBOS DA CONSULTA $Array[] = Array("id" => "$id", "nome" => "$nome"); $json_encode = json_encode($Array); echo $json_encode; // ESCREVENDO OS DADOS } mysql_close($conexao); ?>

1
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Bing [Bot]