Foros del Web » Programando para Internet » Javascript » Frameworks JS »

Ayuda Formaulario de Envio Ajax

Estas en el tema de Ayuda Formaulario de Envio Ajax en el foro de Frameworks JS en Foros del Web. Hola a todos, primeramente gracias por la funcion que hacen de ayudar a gente que no entiende muy bien esto de las webs de verdad ...
  #1 (permalink)  
Antiguo 05/07/2008, 17:33
 
Fecha de Ingreso: junio-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
Ayuda Formaulario de Envio Ajax

Hola a todos, primeramente gracias por la funcion que hacen de ayudar a gente que no entiende muy bien esto de las webs de verdad gracias.

Bien voy al grano un amigo tiene un formulario php y ajax de envio lo pueden ver aka www.trulalerodealma.com/contacto.html bien mi problema, me costo mucho configurarlo, pero tengo una serie de problemitas con esto:'(

Primeramente al momento que mandan un correo o cuando escriben algo mal el sitema le avisa que se envio correcto o que hay un errro lo que me pasa a mi esque el mensaje que avisa del envio me sale en letras que no se ven las tengo que subrayar para verlas ya busque en el codigo y no encuentro una solucion, el otro problema esque cuando mando el correo solo me llega esto:
Tenés un nuevo mensaje desde el Sitio:


Correo electrónico: [email protected]

pero no me llegan los demas datos :S ojala alguien me pueda ayudar, los archivos que usa el formulario son php,js,html, y Cascading Style Sheet Document los pueden descargar del aqui: http://www.enfoquesfm.com/formulario.rar

si no lo quieren descargar aqui dejo los codigos

Code archivo php llamado mail:

Código HTML:
<?php
function validaLongitud($valor, $permiteVacio, $minimo, $maximo)
{
	$cantCar=strlen($valor);
	if(empty($valor))
	{
		if($permiteVacio) return TRUE;
		else return FALSE;
	}
	else
	{
		if($cantCar>=$minimo && $cantCar<=$maximo) return TRUE;
		else return FALSE;
	}
}

function validaCorreo($valor)
{
	if(eregi("([a-zA-Z0-9._-]{1,30})@([a-zA-Z0-9.-]{1,30})", $valor)) return TRUE;
	else return FALSE;
}

// MAIN	

if($_POST)
{
	foreach($_POST as $clave => $valor) $$clave=addslashes(trim(utf8_decode($valor)));
	sleep(1);

	if(!validaCorreo($correo)) $error=1;
	
	
	if($error==1) echo "Error";
	else
	{
		$fecha=date("d/m/y - H:i");
		$mensaje="
Tenés un nuevo mensaje desde el Sitio:


Correo electrónico: $correo
";
		mail("[email protected]", "Newsletter", $mensaje, "From: Sitio Web <[email protected]>");
		echo "OK";
	}
}
?>
aparte ay un archivo js ese se llama funciones y este es el code:

Código HTML:
// Variables para setear
onload=function() 
{
	cAyuda=document.getElementById("mensajesAyuda");
	cNombre=document.getElementById("ayudaTitulo");
	cTex=document.getElementById("ayudaTexto");
	divTransparente=document.getElementById("transparencia");
	divMensaje=document.getElementById("transparenciaMensaje");
	form=document.getElementById("formulario");
	urlDestino="mail.php";
	
	claseNormal="input";
	claseError="inputError";
	
	ayuda=new Array();
	ayuda["Nombre"]="Ingresa tu nombre. De 4 a 50 caracteres. OBLIGATORIO";
	ayuda["Asunto"]="Ingresa Tu Asunto de Consulta. De 4 a 50 caracteres.";
	ayuda["Ciudad"]="Ingresa la ciudad donde radicas.";
	ayuda["Correo"]="Ingresa un e-mail válido. OBLIGATORIO";
	ayuda["Comentario"]="Ingresa tus comentarios. De 5 a 500 caracteres. OBLIGATORIO";
	
	preCarga("ok.gif", "loading.gif", "error.gif");
}

function preCarga()
{
	imagenes=new Array();
	for(i=0; i<arguments.length; i++)
	{
		imagenes[i]=document.createElement("img");
		imagenes[i].src=arguments[i];
	}
}

function nuevoAjax()
{ 
	var xmlhttp=false; 
	try 
	{ 
		// No IE
		xmlhttp=new ActiveXObject("Msxml2.XMLHTTP"); 
	}
	catch(e)
	{ 
		try
		{ 
			// IE 
			xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); 
		} 
		catch(E) { xmlhttp=false; }
	}
	if (!xmlhttp && typeof XMLHttpRequest!="undefined") { xmlhttp=new XMLHttpRequest(); } 
	return xmlhttp; 
}

function limpiaForm()
{
	for(i=0; i<=4; i++)
	{
		form.elements[i].className=claseNormal;
	}
	document.getElementById("inputComentario").className=claseNormal;
}

function campoError(campo)
{
	campo.className=claseError;
	error=1;
}

function ocultaMensaje()
{
	divTransparente.style.display="none";
}

function muestraMensaje(mensaje)
{
	divMensaje.innerHTML=mensaje;
	divTransparente.style.display="block";
}

function eliminaEspacios(cadena)
{
	// Funcion para eliminar espacios delante y detras de cada cadena
	while(cadena.charAt(cadena.length-1)==" ") cadena=cadena.substr(0, cadena.length-1);
	while(cadena.charAt(0)==" ") cadena=cadena.substr(1, cadena.length-1);
	return cadena;
}

function validaLongitud(valor, permiteVacio, minimo, maximo)
{
	var cantCar=valor.length;
	if(valor=="")
	{
		if(permiteVacio) return true;
		else return false;
	}
	else
	{
		if(cantCar>=minimo && cantCar<=maximo) return true;
		else return false;
	}
}

function validaCorreo(valor)
{
	var reg=/(^[a-zA-Z0-9._-]{1,30})@([a-zA-Z0-9.-]{1,30}$)/;
	if(reg.test(valor)) return true;
	else return false;
}

function validaForm()
{
	limpiaForm();
	error=0;
	
	var nombre=eliminaEspacios(form.inputNombre.value);
	var asunto=eliminaEspacios(form.inputAsunto.value);
	var ciudad=eliminaEspacios(form.inputCiudad.value);
	var correo=eliminaEspacios(form.inputCorreo.value);
	var comentarios=eliminaEspacios(form.inputComentario.value);
	
	if(!validaLongitud(nombre, 0, 4, 50)) campoError(form.inputNombre);
	if(!validaLongitud(asunto, 1, 4, 50)) campoError(form.inputAsunto);
	if(!validaLongitud(ciudad, 1, 4, 50)) campoError(form.inputCiudad);
	if(!validaCorreo(correo)) campoError(form.inputCorreo);
	if(!validaLongitud(comentarios, 0, 5, 500)) campoError(form.inputComentario);
	
	if(error==1)
	{
		var texto="<img src='error.gif' alt='Error'><br><br>Error: revise los campos en rojo.<br><br><button style='width:45px; height:18px; font-size:10px;' onClick='ocultaMensaje()' type='button'>Ok</button>";
		muestraMensaje(texto);
	}
	else
	{
		var texto="<img src='loading.gif' alt='Enviando'><br>Enviando. Por favor espere.<br><br><button style='width:60px; height:18px; font-size:10px;' onClick='ocultaMensaje()' type='button'>Ocultar</button>";
		muestraMensaje(texto);
		
		var ajax=nuevoAjax();
		ajax.open("POST", urlDestino, true);
		ajax.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
		ajax.send("nombre="+nombre+"&asunto="+asunto+"&ciudad="+ciudad+"&correo="+correo+"&comentarios="+comentarios);
		
		ajax.onreadystatechange=function()
		{
			if (ajax.readyState==4)
			{
				var respuesta=ajax.responseText;
				if(respuesta=="OK")
				{
					var texto="<img src='ok.gif' alt='Ok'><br>Gracias por su mensaje.<br>Le responderemos a la brevedad.<br><br><button style='width:45px; height:18px; font-size:10px;' onClick='ocultaMensaje()' type='button'>Ok</button>";
				}
				else var texto="<img src='error.gif'><br><br>Error: intente más tarde.<br><br><button style='width:45px; height:18px; font-size:10px;' onClick='ocultaMensaje()' type='button'>Ok</button>";
				
				muestraMensaje(texto);
			}
		}
	}
}

// Mensajes de ayuda

if(navigator.userAgent.indexOf("MSIE")>=0) navegador=0;
else navegador=1;

function colocaAyuda(event)
{
	if(navegador==0)
	{
		var corX=window.event.clientX+document.documentElement.scrollLeft;
		var corY=window.event.clientY+document.documentElement.scrollTop;
	}
	else
	{
		var corX=event.clientX+window.scrollX;
		var corY=event.clientY+window.scrollY;
	}
	cAyuda.style.top=corY+20+"px";
	cAyuda.style.left=corX+15+"px";
}

function ocultaAyuda()
{
	cAyuda.style.display="none";
	if(navegador==0) 
	{
		document.detachEvent("onmousemove", colocaAyuda);
		document.detachEvent("onmouseout", ocultaAyuda);
	}
	else 
	{
		document.removeEventListener("mousemove", colocaAyuda, true);
		document.removeEventListener("mouseout", ocultaAyuda, true);
	}
}

function muestraAyuda(event, campo)
{
	colocaAyuda(event);
	
	if(navegador==0) 
	{ 
		document.attachEvent("onmousemove", colocaAyuda); 
		document.attachEvent("onmouseout", ocultaAyuda); 
	}
	else 
	{
		document.addEventListener("mousemove", colocaAyuda, true);
		document.addEventListener("mouseout", ocultaAyuda, true);
	}
	
	cNombre.innerHTML=campo;
	cTex.innerHTML=ayuda[campo];
	cAyuda.style.display="block";
}
  #2 (permalink)  
Antiguo 05/07/2008, 17:34
 
Fecha de Ingreso: junio-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
Ayuda Formaulario de Envio Ajax

Perdon el doble post pero no me alcanso para acabar de poner los codigos:

y ademas ay un archovo html este es el code:

Código HTML:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Formulario de contacto Enfoquesfm.comX</title>
<script type="text/javascript" src="funciones.js"></script>
<style type="text/css">
<!--
body {
	background-image: url();
	background-color: #000000;
}
.Estilo6 {
	font-family: Insaniburger;
	font-size: medium;
	color: #FFFFFF;
}
.Estilo14 {	font-size: 9px;
	font-weight: bold;
}
.Estilo5 {	color: #FFFF00;
	font-weight: bold;
}
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
	text-decoration: none;
}
a:active {
	text-decoration: none;
}
.Estilo1 {	color: #FFFFFF;
	font-weight: bold;
}
-->
</style>
<head>
<script src="Scripts/AC_ActiveX.js" type="text/javascript"></script>
<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<body>
</center>
<label>
<div align="center">
  <table width="800" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
      <td><form id="formulario">
          <div id="transparencia">
            <div id="transparenciaMensaje">
              <div align="center"></div>
            </div>
          </div>
        <div align="center">
          <p><img src="contac.jpg" width="400" height="100"></p>
          <table width="500" border="0" cellspacing="0" cellpadding="0">
              <tr>
                <td width="99"><span class="label"><span class="Estilo1">Nombre:</span></span></td>
                <td width="30"><span class="campo"><span class="ayuda"><img src="ayuda.gif" alt="Ayuda" onMouseOver="muestraAyuda(event, 'Nombre')"></span></span></td>
                <td width="271"><span class="ayuda"><span class="campo">
                  <input class="inputNormal" type="text" id="inputNombre">
                </span></span></td>
              </tr>
              <tr>
                <td><span class="label"><span class="Estilo1">Asunto:</span></span></td>
                <td><span class="campo"><span class="ayuda"><img src="ayuda.gif" alt="Ayuda" onMouseOver="muestraAyuda(event, 'Asunto')"></span></span></td>
                <td><span class="ayuda"><span class="campo">
                  <input class="inputNormal" type="text" id="inputAsunto">
                </span></span></td>
              </tr>
              <tr>
                <td><span class="label"><span class="Estilo1">Ciudad:</span></span></td>
                <td><span class="campo"><span class="ayuda"><img src="ayuda.gif" alt="Ayuda" onMouseOver="muestraAyuda(event, 'Ciudad')"></span></span></td>
                <td><span class="ayuda"><span class="campo">
                  <input class="inputNormal" type="text" id="inputCiudad">
                </span></span></td>
              </tr>
              <tr>
                <td><span class="label"><span class="Estilo1">Mail:</span></span></td>
                <td><span class="campo"><span class="ayuda"><img src="ayuda.gif" alt="Ayuda" onMouseOver="muestraAyuda(event, 'Correo')"></span></span></td>
                <td><span class="ayuda"><span class="campo">
                  <input class="inputNormal" type="text" id="inputCorreo">
                </span></span></td>
              </tr>
              <tr>
                <td><span class="label"><span class="Estilo1">Comentarios:</span></span></td>
                <td><span class="campo"><span class="ayuda"><img src="ayuda.gif" alt="Ayuda" onMouseOver="muestraAyuda(event, 'Comentario')"></span></span></td>
                <td><span class="ayuda"><span class="campo">
                  <textarea name="inputComentario" class="inputNormal" id="inputComentario"></textarea>
                </span></span></td>
              </tr>
            </table>
          <br>
          </div>
        <div>
            <div align="center">
              <button id="botonEnviar" onClick="validaForm()" type="button">Enviar</button>
              <button type="reset">Borrar</button>
            </div>
        </div>
      </form>
    </tr>
  </table>
  <p>
    <object id=MMPlayer1 
            codebase=http://activex.microsoft.com/activex/controls/mplayer/en/nsmp2inf.cab#Version=5,1,52,701 
            type=application/x-oleobject height=70 width=268 align=absMiddle 
            classid=CLSID:22d6f312-b0f6-11d0-94ab-0080c74c7e95>
      <param name="FileName" value="http://streaming-hosting.net:8378">
      <param name="ShowControls" value="1">
      <param name="ShowStatusBar" value="1">
      <param name="ShowDisplay" value="0">
      <param name="DefaultFrame" value="Slide">
      <param name="Autostart" value="true">
      <param name="volume" value="80">
      <embed src="http://streaming-hosting.net:8378" width=268 height=70 
            volume=100 autostart=true loop=1align="absmiddle" 
            type="application/x-mplayer2" 
            pluginspage="http://www.microsoft.com/Windows/MediaPlayer/download/default.asp" 
            showcontrols=1 showdisplay=0 showstatusbar=1 > </embed>
    </object>
    <br>
    <object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="600" height="30" id="acabadp" align="middle">
      <param name="allowScriptAccess" value="sameDomain" />
      <param name="movie" value="user.swf" />
      <param name="quality" value="high" />
      <param name="bgcolor" value="#000000" />
      <embed src="user.swf" quality="high" bgcolor="#000000" width="600" height="30" name="user" align="middle" allowscriptaccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />    
</object>
    <br>
    <img src="pie.jpg" alt="" width="736" height="40" /><br>
  </p>
</div>
</label>
            <!-- -->
            <!--6 -->
            <label>
            
</div>
  </label>
</form>
</body>
</html> 
y por ultimo ay un archivo Cascading Style Sheet Document que tiene el siguiente codigo

Código HTML:
#formContenedor 
{
	text-align:center;
	position:absolute;
	width:400px;
	left:507px;
	margin-left:-200px;
	top: 19px;
}

table { width:400px; }

input 
{
	width:220px;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-size:13px;
	border:1px solid;
}

textarea
{
	width:220px;
	height:100px;
	font-family:Verdana, Arial, Helvetica, sans-serif;
	font-size:13px;
	border:1px solid;
}

button { width:100px; height:22px; font-family:Verdana; font-size:11px; }

.label { width:110px; text-align:left; }

.campo { width:240px; }

.ayuda { width:50px; text-align:center; }

.inputNormal { border:1px solid; }

.inputError
{
	border:1px solid #FF0000;
	background-color:#FFF4F0;
	color:#FF0000;
}

/* Capas de transparencia y mensajes de confirmacion */

#transparencia
{
	background-color:#FFFFFF; 
	z-index:1; 
	position:absolute;
	width:400px;
	height:260px;
	display:none;
	opacity:0.95; filter:alpha(opacity="95");
}

#transparenciaMensaje
{
	position:absolute;
	width:300px;
	height:100px;
	margin-top:-50px;
	margin-left:-150px;
	top:50%;
	left:50%;
}

/* Mensajes de ayuda */

#mensajesAyuda
{
	width:160px;
	font-family:Verdana;
	font-size:10px;
	border:1px solid #FFFFFF;
	position:absolute;
	top:0px;
	left:0px;
	display:none;
	text-align:center;
}

#ayudaTitulo
{
	background-color:#FFFFFF; 
	color:#FFFFFF; 
	padding:1px;
}

#ayudaTexto
{
	vertical-align:middle;
	padding:2px;
}
la direccion de el formualrio es www.enfoquesfm.com/contacto.html ojala alguien me pueda ayudarr con mi problema que no me a quedado

Gracias de Antemano

Quedo al pendiente
  #3 (permalink)  
Antiguo 08/07/2008, 15:12
 
Fecha de Ingreso: junio-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
¿¿Tiene Solucion??

Hola a todos ase dias postie un problema mio que me esta sucediendo pero nadie me a contestado el problema esta en el siguiente link

http://www.forosdelweb.com/f77/ayuda-formaulario-envio-ajax-603217/

alguien me podria decir si tengo solucion?
  #4 (permalink)  
Antiguo 14/07/2008, 15:12
 
Fecha de Ingreso: octubre-2003
Mensajes: 18
Antigüedad: 20 años, 6 meses
Puntos: 1
Respuesta: Ayuda Formaulario de Envio Ajax

la página no tiene nada.
  #5 (permalink)  
Antiguo 15/07/2008, 22:43
 
Fecha de Ingreso: junio-2008
Mensajes: 12
Antigüedad: 15 años, 10 meses
Puntos: 0
Respuesta: Ayuda Formaulario de Envio Ajax

si tiene lo q pasa es q solo me llega el correo del que me envia algo pero no me llega los demas datos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:55.