Jump to content

Problema :Formulario de contacto PHP validacion y otro


Recommended Posts

Aqui esta el .mail

<?php
$Nombres= $_POST["Nombres"];
$Apellidos= $_POST["Apellidos"];
$Movil= $_POST["Movil"];
$Correo= $_POST["Correo"];
$Domicilio= $_POST["Domicilio"];
$Servicio= $_POST["Servicio"];
$Mensaje= $_POST["Mensaje"];
if ($Nombres == "" AND $Movil == "" AND $Correo == "" AND $Mensaje == "") {
 # Muestro mensaje de error
 echo 'Complete el formulario';
}
# Caso contrario, procedo a enviar el email
else{
$header = "From: $Nombres $mail\r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje .= "Nombres :". $Nombres ." \r\n";
$mensaje .= "Apellidos :". $Apellidos ." \r\n";
$mensaje .= "Su Numero es : " . $Movil . " \r\n";
$mensaje .= "Su Domicilio es : " . $Domicilio . " \r\n";
$mensaje .= "Su E-mail es : " . $Correo . " \r\n";
$mensaje .= "El Servicio es : " . $Servicio . " \r\n";
$mensaje .= "\r\n";
$mensaje .= "Mensaje : " . $_POST['Mensaje'] . " \r\n";
$mensaje .= "\r\n";
$mensaje .= "Enviado el " . date('d/m/Y', time());
$para = '[email protected]';
$asunto = 'Contacto Soporte Tecnico';
if (mail($para, $asunto, utf8_decode($mensaje), $header)) {
echo 'El mensaje fue enviado!';
 }
 else {
echo 'Llena todos los campos!';
 }
}
?>

 

y aca esta el formulario de contacto

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script type="text/javascript">
<!--
function MM_swapImgRestore() { //v3.0
 var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}
function MM_findObj(n, d) { //v4.01
 var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
 if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
 for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
 if(!x && d.getElementById) x=d.getElementById(n); return x;
}
function MM_swapImage() { //v3.0
 var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
  if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
//-->
</script>
<head><LINK REL="SHORTCUT ICON" HREF="/images/ico.png">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Soporte Técnico</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body onload="MM_preloadImages('images/buscanos-en-facebook2.png')">
<div id="wrap">
<div id="header">
<div id="logo">
<h1 id="sitename">Soporte<span class="green">Cp</span></h1>
<h2 class="description">La mejor calidad en servicio y soporte técnico</h2>
</div>
<div id="headercontent">
<h2>Técnicos a domicilio</h2>
<p> </p>
<p> Enviamos técnicos a domicilio para facilitar la atención a nuestros clientes. Nuestros servicios si no pueden ser llevados a cabo en el lugar el equipo será trasladado a nuestro centro de mantención.</p>
<p> </p>
<p> <img src="images/bullet.png" alt="Bullet" width="10" height="10" /> <a href="#">Solicitar</a></p>
<p></p>
</div><div id="sitecption">Page el Precio justo Servicio a <span class="bigger">Domicilio</span> aquí</div>
</div>
<div id="main">
<div id="menus">
<div id="mainmenu">
<ul>
<li class="first"><a href="index.html">Inicio</a></li>
<li><a href="acercade.html">acerca de</a></li>
<li><a href="#">Tienda</a></li>
<li><a href="servicios.html">servicios</a></li>
<li><a href="/novedades.html">novedades</a></li>
<li><a href="/descargas.html">descargas</a></li>
<li id="active"><a href="contacto.php">contacto</a></li>
</ul>
</div>
<div id="submenu">
 <ul>
<li><a href="/descargas.html">Antivirus</a></li>
<li><a href="/descargas.html">AntiSpyware</a> </li>
<li><a href="/descargas.html">Limpiador de registro </a></li>
<li><a href="/descargas.html">Herramientas</a></li>
 </ul>
</div>
</div>
<div id="content">
<div id="homeleft">
<h2>Contacte<span class="green">nos</span></h2>
<div id="contactform">
<form name="form1" method="post" action="mail.php">
<table width="500" border="0" cellpadding="5">
 <tr>
<th scope="row">Nombres</th>
<td><input name="Nombres" type="text" id="Nombres" size="30" /></td>
 </tr>
 <tr>
<th scope="row">Apellidos</th>
<td><input name="Apellidos" type="text" id="Apellido" size="30" /></td>
 </tr>
 <tr>
<th scope="row">Movil</th>
<td><input name="Movil" type="text" id="Movil" size="30" /></td>
 </tr>
 <tr>
<th scope="row">Correo</th>
<td><input name="Correo" type="text" id="Correo" size="30" /></td>
 </tr>
 <tr>
<th scope="row">Domicilio</th>
<td><input name="Domicilio" type="text" id="Domicilio" size="30" /></td>
 </tr>
 <tr>
<th scope="row">Servicio</th>
<td><select name= "Servicio" id="Servicio">
<option value="">Seleccione un servicio</option>
<option value="Respaldo de información">Respaldo de información</option>
<option value="Formateo de computador">Formateo de computador</option>
<option value="Instalación Inalámbrica">Instalación Inalámbrica</option>
<option value="Creación de puntos de red y cableado">Creación de puntos de red</option>
<option value="Limpieza interna del computador">Limpieza interna del computador</option>
<option value="Eliminación de virus">Eliminación de virus</option>
<option value="Edición multimedia">Edición multimedia</option>
 <option value="Creación de Script de respaldo">Creación de Script de respaldo</option>
<option value="Otro servicio">Otros servicios</option>
</td>
 </tr>
 <tr>
<th scope="row"> </th>
<td> </td>
 </tr>
 <tr>
<th scope="row"> </th>
<td><p>
  <textarea name="Mensaje" id="Mensaje" cols="45" rows="5"></textarea>
</p>
  <p>
	<input type="submit" name="Enviar" id="Enviar" value="Enviar" />
  </p></td>
 </tr>
</table>
<label><br />
 </label>		
 <blockquote>  <p> </p></blockquote>
<blockquote> <p> </p> </blockquote>
</form>
</div>


</form>

</div>
</div>
<div id="homeright">
<h2> Contactenos<span class="green"> </span></h2>
<div id="sidebar1">
<h3>Ubicación </h3>
<p>Melipilla,<br />
Región Metropolitana,<br />
Soporte CP, <br />
Chile</p>
<h3>Correos de contacto</h3>
<p>[email protected]</p>
<p>[email protected]</p>
<p><a href="http://www.facebook.com/pages/Soporte-CP/330369610310996" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Imagen2','','images/buscanos-en-facebook2.png',1)"><img src="images/buscanos-en-facebook.png" width="170" height="124" border="0" id="Imagen2" /></a></p>
</p>
</div>
<div id="sidebar2">
 <h3>Números Telefónicos </h3>
 <p> (07) - 3917034 </p>
 <p>(09) - 8984556</p>
 <p> </p>
 <p><div id="fb-root"></div>
<script>(function(d, s, id) {
 var js, fjs = d.getElementsByTagName(s)[0];
 if (d.getElementById(id)) return;
 js = d.createElement(s); js.id = id;
 js.src = "//connect.facebook.net/es_LA/all.js#xfbml=1";
 fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));</script><div class="fb-like" data-href="http://www.facebook.com/pages/Soporte-CP/330369610310996" data-send="false" data-layout="box_count" data-width="120" data-show-faces="true"></div><br />
<br />
 </p>
</div>
</div>
<div class="clear"></div>
</div>
<div id="footer">Soportecp.com © All Rights Reserved <br />
 Servicios informáticos<br />
2008-2012 . Diseño editado desde <a href="#">SoporteCp</a></div>

</div>
</body>
</html>

 

Problema Nº1

 

El codigo esta funcional osea meten datos ponen click en enviar y envian pero mi problema es que me redirije a otra pagina y solo dice" envio exitoso" o "llene campos" .

 

Pregunta:

¿como puedo hacer que me envie un mensaje y que en la misma web diga "envio exitoso" o en caso de error "llene campos"?

 

 

Problema Nº2

 

Hize una especie de validador de campos, como soy noob me complique mas de la cuenta, y cuando trato de enviar solo me valida "Apellidos" y "Domicilio" osea que si escribo algo en cualquier otro campo lo envia igual ignorando los demas campos.

 

Pregunta:

¿Como hago una validacion de campos que funcione correctamente ?

 

PD: de antemano muchas gracias por el tiempo y la idea es que si es necesario rehacer todo pues se hace todo de nuevo , gracias.

 

si bien quieren verlo con todo el entorno y demas aqui se puede bajar esta por mediafire y pesa 360KB "plantilla"

Link to comment
Share on other sites

Mira te voy a dejar un ejemplo de lo que quieres hacer, pero con un poco de Ajax:

 

http://www.formatoweb.com.ar/ajax/formulario_de_contacto_en_ajax.php

 

Y puedes bajar el ejemplo completo desde acá:

 

http://www.formatoweb.com.ar/ajax/download/10.zip

 

 

Saludos :krider:

Link to comment
Share on other sites

gracias AshWilliams estoy comprendiendo el codigo y estoy aplicandolo aver como queda:B si todo andab bien respondo :B

 

Posteas tu solución y me avisas para cerrar el tema XD.

 

 

 

 

Saludos :krider:

Link to comment
Share on other sites

¿Pero es posible alguna solucion solo en php sin tener que usar otro metodo, solo configurando mi mail.php y mi form.? es que la verdad solo quiero algo mas simple.

 

PD: efectivamente probe el archivo que venia adjunto en la web mensionada, y ya pude hacerlo funcionar correctamente en mi web y te loa gradesco mucho aun que mi intencion era hacerlo solo con php sin recurrir a otros metodos.

 

lamento hacer re post pero cuando le pongo editar me manda ala cresta "

Oops! This page appears broken. DNS Error - Server cannot be found."

 

Como decia con un ejemplito de validar campos la hago pero solo con php tabajando en mi form y en elmail.php"

Edited by AshWilliams
Link to comment
Share on other sites

Ahi te uni los post...mira con Ajax la validación de hace en tiempo real y sin cargar o recargar la página...en php es al reves, no es en tiempo real y tienes que enviar la web al server, que este valide y todo el cuento....Ajax es más amistoso y efectivo y te ahorras enviar pega de validación al server, pues el proceso de validación se hace en la parte del cliente( a menos que uses bd).

 

 

Saludos :krider:

Link to comment
Share on other sites

Se procede al cierre.....siempre es bueno aprender nuevas tecnologías, o, en este caso, tecnologías que ayudan a las que ya conoces....ojo, que con Ajax puedes hacer muchas cosas interesantes XD.

 

 

Saludos cumpa :krider:

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...