Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

CaBo GeL

Botao acao

Recommended Posts

Ola amigos!

pra ser sincero n sei nada de ajax! e minha duvida e a seguinte:

 

to com um porjeto de um site e estou precisando urgentemente de um script pronto de ajax pra fazer o seguinte:

 

- qndo o usuario clicar em um ( <input type="image" ... ) ele fazerá uma ação e envia um valor para o banco, sem q a pagina seja atualizada!

 

Obs: para servir de exemplo: O orkut

- qndo o usuario clica na estrelha ele faz uma acao e envia um valor ao banco..

 

 

sera q fui claro???

 

Agradesco desde ja a todos! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, ai vai um exemplo bem simplesão, mas pra você dar uma olhada e ver como funciona tah bem legal...

 

Ai vai o javascript, primeiro tem a função que define o ajax, depois tem q função que chama ele, e que vai submeter informações para uma página dinâmica, neste caso o php. E tbm vai pegar o retorno da página em php

<script>function openAjax() {var ajax;try{	ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers decentes, como: Firefox, Safari, dentre outros.	}catch(ee){		try{			ajax = new ActiveXObject("Msxml2.XMLHTTP"); // Para o IE da MS		}catch(e){			try{				ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS			}catch(E){				ajax = false;			}		}	}	return ajax;}function inserir(item) {	var ajax = openAjax(); // Inicia o Ajax.	var exibeResultado = document.getElementById('resultado');	ajax.open("GET", "inserir.php?registro=" + item, true); // Envia o termo da busca como uma querystring.	ajax.onreadystatechange = function() {	if(ajax.readyState == 1) { // Quando estiver carregando, exibe: carregando...		exibeResultado.innerHTML = '<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Aguarde...</font> </div>';	}	if(ajax.readyState == 4) { // Quando estiver tudo pronto.		if(ajax.status == 200) {			var resultado = ajax.responseText; // Retornado pelo Ajax nessa variável (var resultado).			exibeResultado.innerHTML = resultado;		} else {			exibeResultado.innerHTML = "Erro: ";		}	}}ajax.send(null); // submete}</script>

Agora vai o html da mesma página

 

<input type="button" name="Button" value="Botão" onClick="inserir('Teste');"><div id="resultado"></div>

Bom, ai criei um botão para chamar a função inserir, no seu caso, altere esse botão e coloque a sua imagem com o evento onClick chamando a função... tbm botei uma div para mostrar o resultado da sua página dinâmica...

 

por fim vai o php...

 

<?php	echo $_GET["registro"];?>

Como você viu, na função de envio, passei para a página inserir.php via get a string registro, ai no php simplesmente imprimi ela... no seu caso, você terá que fazer a inserção no banco....

 

Tah bem resumido o uso do ajax ai... mas dá uma boa pesquisada que tem bastante coisa na net que pode te ajudar

 

Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola Benck, primeiramente kero te agradescer a atencao!!cara.. eu testei seu codigo, qndo faco a acao com minha pagina ASP dar erro no seu script...favor, veja se estou fazendo algo errado!!Index.htm------------------------------<script>function openAjax() {var ajax;try{ ajax = new XMLHttpRequest(); // XMLHttpRequest para browsers decentes, como: Firefox, Safari, dentre outros. }catch(ee){ try{ ajax = new ActiveXObject("Msxml2.XMLHTTP"); // Para o IE da MS }catch(e){ try{ ajax = new ActiveXObject("Microsoft.XMLHTTP"); // Para o IE da MS }catch(E){ ajax = false; } } } return ajax;}function inserir(item) { var ajax = openAjax(); // Inicia o Ajax. var exibeResultado = document.getElementById('resultado'); ajax.open("GET", "Testando.asp?registro=" + item, true); // Envia o termo da busca como uma querystring. ajax.onreadystatechange = function() { if(ajax.readyState == 1) { // Quando estiver carregando, exibe: carregando... exibeResultado.innerHTML = '<div align="center"><font face="Verdana, Arial, Helvetica, sans-serif" size="1">Aguarde...</font> </div>'; } if(ajax.readyState == 4) { // Quando estiver tudo pronto. if(ajax.status == 200) { var resultado = ajax.responseText; // Retornado pelo Ajax nessa variável (var resultado). exibeResultado.innerHTML = resultado; } else { exibeResultado.innerHTML = "Erro: "; } }}ajax.send(null); // submete}</script><input type="button" name="Button" value="Botão" onClick="inserir('Teste');"><div id="resultado"></div>----------------------------------------fiz outra pagina para puxar a querystring do seu scriptTestando.asp----------------------------------------<%caminho=server.mappath("Banco.mdb")conexao ="dbq="&caminho&";driver={microsoft access driver (*.mdb)}"set Objbanco=server.createobject("adodb.connection")Objbanco.open conexaoNome=Request.Querystring("registro")Sql="Insert Into Cadastro(Campo3) Values('"&Nome&"')"Objbanco.Execute(sql)%>--------------------------------Agradesco a tua ajuda cara!!Abracos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, testei o teu código e funcionou legal aqui, coloca um response.write("Ok") depois do Objbanco.Execute(sql) e vê se ele retorna essa mensagem na telaValeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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