Foros del Web » Programando para Internet » PHP »

Formulario html , php, campos obligatorios y otras dudas.

Estas en el tema de Formulario html , php, campos obligatorios y otras dudas. en el foro de PHP en Foros del Web. Hola a todos! soy nuevo en el foro, seguramente gracias a muchos de ustedes aprendí algunas de las cosas que hoy aplico en lás paginas ...
  #1 (permalink)  
Antiguo 24/10/2011, 21:06
 
Fecha de Ingreso: octubre-2011
Ubicación: Buenos Aires
Mensajes: 12
Antigüedad: 12 años, 6 meses
Puntos: 0
Formulario html , php, campos obligatorios y otras dudas.

Hola a todos! soy nuevo en el foro, seguramente gracias a muchos de ustedes aprendí algunas de las cosas que hoy aplico en lás paginas que diseño.

Les quería compartir el código html de un formulario y a la vez el código php que me permite envíar dicho formulario. Quiero aclarar que mi verdadera profesión es la de diseño pero me gustaría ir aprendiendo sobre programación.

Sobre el formulario que les comparto, me gustaría saber que agregados habría que hacerle tanto al html como al php, para....

1) que el email no me llegue como anónimo , asi me llega ([email protected]) a mi correo de hotmail donde estoy haciendo las pruebas , aveces en la bandeja de entrada y aveces en correo no deseado. Me gustaría que aparezca el correo de la persona que envía el formulario y que aparezca en la bandeja de entrada.

2) Como hacer para que el campo de teléfono y el de email sean obligatorios. Y que el de email sea válido. (@)

3) Por último cuando selecciono en la lista más de un modelo de auto, al enviar el formulario me llega solo el último modelo seleccionado. La idea sería que lleguen al email todos los modelos seleccionados en cada una de las listas.


Les comparto el código html


Código HTML:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Documento sin t&iacute;tulo</title>
</head>

<body>
<form action="contacto.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
  <p>
    <label for="habitaculos"></label>
  Nombre y Apellido<br />
  <label for="nombre"></label>
  <input type="text" name="nombre" id="nombre" />
  </p>
  <p>E-mail<br />
    <label for="email"></label>
    <input type="text" name="email" id="email" />
  </p>
  <p>Tel&eacute;fono<br />
    <label for="telefono"></label>
    <input type="text" name="telefono" id="telefono" />
  </p>
  <p>Ciudad/Localidad<br />
    <label for="ciudad"></label>
    <input type="text" name="ciudad" id="ciudad" />
    <br />
  </p>
  <p>&nbsp;</p>
  <p>Selecciones los productos por los cuales<br />
    quiere consultar y a la brevedadad nos pondremos en contacto con usted.
    <br />
  </p>
  <p>Habit&aacute;culos<br />
<select name="habitaculos" size="5" multiple="multiple" id="habitaculos">
  <option>AMI 8</option>
  <option>CITROEN 3 CV</option>
  <option>C-15</option>
  <option>BERLINGO 2 Pzas.</option>
  <option>BERLINGO 3 Pzas</option>
  <option>XSARA</option>
  <option selected="selected">Ninguno</option>
</select>
</p>
  <p>Baules<br />
    <label for="baules"></label>
    <select name="baules" size="5" multiple="multiple" id="baules">
      <option>BERLINGO</option>
      <option>CITROEN C-3</option>
      <option>PICASSO</option>
      <option>CITROEN C-4</option>
      <option>CITROEN C-4 / 5 Ptas</option>
      <option selected="selected">Ninguno</option>
    </select>
  </p>
  <p>Cajas<br />
    <label for="cajas"></label>
    <select name="cajas" size="5" multiple="multiple" id="cajas">
      <option>C-15</option>
      <option>BERLINGO</option>
      <option>JUMPER</option>
      <option selected="selected">Ninguno</option>
    </select>
  </p>
  <p>Adicionar una consulta<br />
    <label for="consulta"></label>
    <textarea name="consulta" rows="8" id="consulta"></textarea>
  </p>
  <p>
    <input type="submit" name="button" id="button" value="Enviar" />
    <input type="reset" name="button2" id="button2" value="Borrar" />
     <br />
  </p>
</form>
</body>
</html> 

y el código del php


Código PHP:
<?php 
$sendTo 
"[email protected]"
$subject "Consulta Web"
$nombre $_POST["nombre"];
$email $_POST["email"]; 
$telefono $_POST["telefono"];
$ciudad $_POST["ciudad"];  
$habitaculos $_POST["habitaculos"]; 
$baules $_POST["baules"]; 
$cajas $_POST["cajas"]; 
$consulta $_POST["consulta"]; 
$headers"Content-Type: text/plain; charset=iso-8859-1\n";
$message "\nnombre: " $nombre "\nemail: " $email "\ntelefono: " $telefono "\nciudad: " $ciudad .  "\nhabitaculos: " $habitaculos "\nbaules: " $baules "\ncajas: " $cajas "\nConsulta: " $consulta;
mail($sendTo$subject$message$headers); 
echo 
'Mensaje enviado correctamente';
?>


Mil Gracias a todos!! Y tengan en cuenta que soy un diseñador que esta queriendo aprender de programación


Les comparto algunos de mis últimos trabajos

[URL="http://www.transportesamistad.com"]www.transportesamistad.com[/URL]

[URL="http://www.graficacupper.com.ar"]www.graficacupper.com.ar[/URL]

[URL="http://www.sistosrl.com.ar"]www.sistosrl.com.ar[/URL] (dicho sea de paso el formulario de este sitio tengo que hacerlo funcionar )
  #2 (permalink)  
Antiguo 24/10/2011, 21:50
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

bueno es simple debes usar if para evaluar los datos recividos pero para no redundar en información.. no sea cosa que colapse internet :P te dejo una busqueda de google

http://www.google.com.uy/search?aq=f...w=1440&bih=786


http://www.google.com.uy/search?aq=f...w=1440&bih=786

http://www.google.com.uy/search?aq=f...w=1440&bih=786

enjoy
  #3 (permalink)  
Antiguo 24/10/2011, 23:15
 
Fecha de Ingreso: noviembre-2010
Mensajes: 208
Antigüedad: 13 años, 5 meses
Puntos: 3
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

que tal viejo..

bueno para que los campos telefono y email sean obligatorios basta con un if en el codigo php en este caso algo asi:



if($email==NULL|$telefono==NULL) {
?>
<script>
alert("faltan campos por llenar!");
location.href="form1.html";//pagina donde esta tu formulario
</script>

<?php
}
if (!preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/", $email)) {
exit('El formato del email ingresado no es correcto.');
}
  #4 (permalink)  
Antiguo 24/10/2011, 23:40
 
Fecha de Ingreso: octubre-2011
Ubicación: Buenos Aires
Mensajes: 12
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

Gracias rpichinu y mcun !!


rpichinu de las busquedas que me dejaste, conseguí
el código para que los campos telefono y email sean obligatorios.

if ($email == "" or $telefono == "") {
# Muestro mensaje de error
echo 'Complete el formulario';
}
else{
$headers= "Content-Type: text/plain; charset=iso-8859-1\n";
$message = "\nnombre: " . $nombre . "\nemail: " . $email . "\ntelefono: " . $telefono . "\nciudad: " . $ciudad . "\nhabitaculos: " . $habitaculos . "\nbaules: " . $baules . "\ncajas: " . $cajas . "\nConsulta: " . $consulta;
mail($sendTo, $subject, $message, $headers);
echo 'Mensaje enviado correctamente';
}


mcun de lo que me pasaste extraje el código para verificar el campo de email

<?php
}
if (!preg_match("/^[a-zA-Z0-9_\.\-]+@[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-\.]+$/", $email)) {
exit('El formato del email ingresado no es correcto.');
}


Para mí ya es un gran avance y mas que nada el entender los conceptos de los códigos, tampoco que los entendi de pe a pa, pero voy comprendiendo más, GRACIAS A USTEDES!

Quiza lo tomen como que me dieron la mano y los tomo del brazo!!!
Pero tengo dos consultas mas...

1) Me quedaría resolver que al seleccionar de la lista de modelos de autos, mas de una opción, me llegasen todas las opciones seleccionadas y no solo una! A que se debe esto? que me falta en el código???

2) Hay forma que los mensajes, tanto " complete el formulario " " el mensaje fue enviado " en realidad aparezcan no en /contacto.php , sino en el mismo formulario para que no tengan que volver atras en el navegador??


DEsde ya muchisimas graciasssss!!
  #5 (permalink)  
Antiguo 25/10/2011, 06:22
Avatar de mcun  
Fecha de Ingreso: octubre-2010
Ubicación: tras la pantalla
Mensajes: 466
Antigüedad: 13 años, 6 meses
Puntos: 55
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

1) debes tener select distintos, tu tienes uno para todos

2) header la función para redirigir es header
  #6 (permalink)  
Antiguo 25/10/2011, 11:43
 
Fecha de Ingreso: julio-2010
Mensajes: 275
Antigüedad: 13 años, 10 meses
Puntos: 21
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

revisa este wiki de javascript donde hay para validar algunos datos de los formularios
  #7 (permalink)  
Antiguo 26/10/2011, 02:17
 
Fecha de Ingreso: octubre-2011
Ubicación: Buenos Aires
Mensajes: 12
Antigüedad: 12 años, 6 meses
Puntos: 0
Respuesta: Formulario html , php, campos obligatorios y otras dudas.

Muchas gracias mcun y Sirrohan, mire los link que me pasaron , pero sinceramente no logro modificar el código para que en la selección multiple de la lista me llegue todos los que selecciono y no la última selección, intente apuntar para el lado del array , pero no lo logré tampoco!!
Al igual que los mensaje de El correo se envio correctamente , complete todos los campos, aparezca en el mismo formulario html y no en el php en blanco.

Igual gracias por sus aportes, vere como puedo solucionarlo!

Etiquetas: campos, formulariophp, obligatorios
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 22:44.