Ir para conteúdo

POWERED BY:

Arquivado

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

Patricia

passar dois campos textos pro banco

Recommended Posts

Oi meus queridos!!!to com um probleminha, e não sei se esse tal de AJAX vai resolver, espero que sim, vai ser meu primeiro contato com ele :nataltongue: , o negócio é o seguinte:vou ter dois campos do tipo texto, um campo é hora de saida que o cara vai digitar um horario (13:00) e hora de chegada, que o cara vai digitar outro horario (15:00), depois que eu tiver esses dois dados eu preciso pegar esses valores e fazer uma instrução no SQL e a partir daí gerar um combo box, não tem problema se depois de digitar os dois campos o cara tiver que clicar em um botão, mas como eu faço pra passar esses dois dados pro asp?????alguém ajuda eu??enquanto isso eu to fuçando aqui :natalwink: bigadu

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu preencho dois campos textos, os valores preenchidos serão do tipo hora (13:00), com essas duas horas eu seleciono no banco pessoas disponiveis neste horario, então na combo aparecerão nomes de pessoas, esse sistema é uma agenda de fotógrafos.Eu quero que ao preencher o segundo campo (type: text) eu consiga pegar esses dois valores e gerar minha combo, isso sem refresh, to pesquisando sobre XMLHTTP, acho que com isso vai rolar, se eu conseguir eu posto aqui :natalhappy:

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu consegui enviar pro meu arquivo os dois valores preenchidos nos campos text, mas eu preciso devolver uma combo montada, mas ao invés de aparecer a combo aparece em forma de texto :natalwink: eu adicionei essa, mas não resolveu:xhReq.setRequestHeader('content-type','text/html');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como está o seu código de envio?

Compartilhar este post


Link para o post
Compartilhar em outros sites

tela do formulário:

<tr><td nowrap align="right"><strong>Saída / Retorno: </strong></td><td align="left"><input id="hora_saida" size="6" maxlength="5" OnKeyPress="mascara(this, '99:99');if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;" value<input id="hora_retorno" size="6" maxlength="5" OnKeyPress="mascara(this, '99:99');if (event.keyCode < 48 || event.keyCode > 57) event.returnValue = false;" value<input type="button" value="Atualizar Agenda" onClick="javascript:xhSend('g_fotografos_disponiveis.asp?hora_saida='+ hora_saida.value +'&hora_retorno='+ hora_retorno.value +'');"></td></tr><tr><td nowrap align="right"><strong>Fotógrafo: </strong></td><td align="left"><div id="tContent"></div></td></tr>
js com as funções :

function xhSend(url){	/*		envia a requisicao para o servidor, e tudo o que eh		retornado eh passado a funcao do_readyStateChange	*/		mudaConteudo('tContent', 'Verificando fotógrafos disponíveis...');	xhReq.open("GET",url,true);	xhReq.onreadystatechange = do_readyStateChange;	xhReq.setRequestHeader('content-type','text/html');		xhReq.send(null);		if (window.event) { event.returnValue=false; /* Modo IE */ } else { e.preventDefault(); /* Modo Standard */ }}function do_readyStateChange(){	/*		se a requisicao estiver completa entao exibir o		valor no campo de formulario com id total.	*/	if (xhReq.readyState != 4)  { return; }		if (xhReq.status == 200) { //Se a "status" retornado for "ok" (ver propriedade "status")	  mudaConteudo('tContent', xhReq.responseText); //inserir conteúdo (ver propriedade "responseText")	}	else { //Se o servidor retornou outro código que não "200", mostrar o erro.	  alert('Erro! "'+ xhReq.statusText +'" (erro '+ xhReq.status +')'); //(ver propriedade "statusText")	}}function mudaConteudo(tID, tNC) {  rEs(gE(tID).childNodes); //Limpar conteúdo atual da div  gE('tContent').appendChild(cTN(tNC)); //Inserir novo conteúdo}// funções básicasfunction rEs(tO) { var i, n; //removeElements. Recebe um objeto ou uma coleção deles, para remover do documento  if (!tO) { return false; } if (!tO.nodeName) { if (tO.length) for (n=tO.length; n--;) rEs(tO[n]); }  else tO.parentNode.removeChild(tO);}function gE(tI) { /* theID */  if (document.getElementById) { return document.getElementById(tI); }  else if (document.all) { return document.all[tI]; } else return false;}function cTN(tV) { /* theValue */ return (tV && document.createTextNode) ? document.createTextNode(tV) : false; }
asp:

eu tava querendo gerar um combo a partir da minha seleção no banco, tipo assim

combo = "<select name='cd_fotografo'>"combo = combo &"</option value=''></option>"combo = combo &"</select>"
mas ao invés de mostrar a combo dentro da div, ele escreve "<select name='cd_fotografo'>...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu uso de forma um pouco diferente, veja se essa Function te atende:

function xhSend {
Hora_Saida = document.getElementById("hora_saida").value;
Hora_Retorno = document.getElementById("hora_retorno").value;
document.getElementById("tContent").innerHTML = '<font color="red">Carregando..</font>';
ajax = ajaxInit();
if(ajax) {
  ajax.open("GET", "g_fotografos_disponiveis.asp?hora_saida="+ hora_saida +"&hora_retorno="+ hora_retorno.value +"", true);
  ajax.onreadystatechange = function() {
 if(ajax.readyState == 4) {
   if(ajax.status == 200) {
	 document.getElementById("tContent").innerHTML = ajax.responseText;
   } else {
	 alert(ajax.statusText);
   }
 }
  }
  ajax.send(null);
}
}

E esse code para inicializar o Ajax

function ajaxInit() {
var req;

try {
req = new ActiveXObject("Microsoft.XMLHTTP");
} catch(e) {
try {
 req = new ActiveXObject("Msxml2.XMLHTTP");
} catch(ex) {
 try {
  req = new XMLHttpRequest();
 } catch(exc) {
  alert("Esse browser não tem recursos para uso do Ajax");
  req = null;
 }
}
}

return req;
}

Faz um teste e qualquer coisa dá um grito. Ahh em seu ASP não pode ter um Server.HTMLEncode para a saida final de seu SELECT, faça apenas para os dados que vem do BD para evitar problemas com acentos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

é, nisso que eu tava errando, acho que do outo jeito não retorna htm, mas usei esse .innerHTML e rolou! :natalsmile: muuuuuuuuito obrigada

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.