Foros del Web » Programando para Internet » PHP »

Alguien me podria ayudar con un formulario simple?

Estas en el tema de Alguien me podria ayudar con un formulario simple? en el foro de PHP en Foros del Web. Hola me hace falta hacer un formulario que contenga estos apartados: Nombre,Telefono,e-mail y informacion requerida, pero tengo que hacerlo que en el mismo formulario se ...
  #1 (permalink)  
Antiguo 06/02/2009, 09:07
 
Fecha de Ingreso: septiembre-2003
Mensajes: 288
Antigüedad: 20 años, 7 meses
Puntos: 0
De acuerdo Alguien me podria ayudar con un formulario simple?

Hola me hace falta hacer un formulario que contenga estos apartados:
Nombre,Telefono,e-mail y informacion requerida, pero tengo que hacerlo que en el mismo formulario se pueda enviar al departamento que requieran que son:
Presidente,Oficina,Tesoreria,Director, subdirector, la verdad es que no tengo ni idea de php es una de las cosas pendientes que tengo, a ver si me pongo, si alguien puede ayudarme se lo agradeceria, gracias y un salu2.
  #2 (permalink)  
Antiguo 06/02/2009, 09:41
Avatar de XLogus  
Fecha de Ingreso: noviembre-2008
Ubicación: AQP
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 19
Respuesta: Alguien me podria ayudar con un formulario simple?

Si quieres que se envie el departamento, usa un combobox y alli pones las distintas opciones de departamento.

¿Cómo se captura el dato?
Pues exactamente igual que con cualquier input $_POST['micombo'] o $_GET['micombo']

Cuando dices "enviar", te refieres a enviar un correo electrónico?
  #3 (permalink)  
Antiguo 06/02/2009, 09:43
 
Fecha de Ingreso: septiembre-2003
Mensajes: 288
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Alguien me podria ayudar con un formulario simple?

os pongo aqui como lo tengo a ver si veis el error el caso es que no me llegan los correos.

archivo html:
<html>
<body>

<img src="http://www.forosdelweb.com/f18/imagenes/contactar .jpg" width="760" height="576" />
<form id="enviar_mail" name="enviar_mail" method="post" action="enviacorreo.php">
<div id="Layer2">
<input name="nombre" type="text" id="nombre" size="42" class="tempo" />
</div>
<div id="Layer3">
<input name="telefono" type="text" id="telefono" size="42" maxlength="9" class="tempo" />
</div>
<div id="Layer4">
<input name="email" type="text" id="email" size="42" class="tempo" />
</div>
<div id="Layer5">
<textarea name="comentarios" cols="65" rows="7" id="comentarios" class="tempo"></textarea>
</div>
<div id="Layer6">
<select name="departamento" id="departamento">
<option value="[email protected]">Presidente</option>
<option value="[email protected]">Oficina</option>
<option value="[email protected]">Tesorería</option>
<option value="[email protected]">Director Tiro al Plato</option>
<option value="[email protected]">Director Tiro Pichón</option>
<option value="0" selected="selected">Seleccion el destino</option>
</select>
</div>
<div id="Layer7">
<input name="Enviar" type="submit" id="enviar" value="Enviar" />
</div>
<div id="Layer8">
<input name="limpiar" type="reset" id="limpiar" value="Limpiar " />
</div>
</FORM>

</body>
</html>


y este es el archivo php llamado enviacorreo.php:

<php>

<?

if (phpversion() >= "4.2.0") {
if ( ini_get('register_globals') != 1 ) {
$supers = array('_REQUEST',
'_ENV',
'_SERVER',
'_POST',
'_GET',
'_COOKIE',
'_SESSION',
'_FILES',
'_GLOBALS' );

foreach( $supers as $__s) {
if ( (isset($$__s) == true) && (is_array( $$__s
) == true) ) extract( $$__s, EXTR_OVERWRITE );
}
unset($supers);
}
} else {
if ( ini_get('register_globals') != 1 ) {

$supers = array('HTTP_POST_VARS',
'HTTP_GET_VARS',
'HTTP_COOKIE_VARS',
'GLOBALS',
'HTTP_SESSION_VARS',
'HTTP_SERVER_VARS',
'HTTP_ENV_VARS'
);

foreach( $supers as $__s) {
if ( (isset($$__s) == true) && (is_array( $$__s
) == true) ) extract( $$__s, EXTR_OVERWRITE );
}
unset($supers);
}
}



if($email=="")
{

echo "<script languaje=javascript>".
"alert(\"¡¡¡¡EL E-MAIL NO ES CORRECTO!!!!\");".
"location.href=\"contactar.html\";".
"</script>";

}


<select name="departamento" id="departamento">
<option value="[email protected]">Presidente</option>
<option value="[email protected]">Oficina</option>
<option value="[email protected]">Tesorería</option>
<option value="[email protected]">Director Tiro al Plato</option>
<option value="[email protected]">Director Tiro Pichón</option>
<option value="0" selected="selected">Seleccion el destino</option>
</select>


$asunto = "Formulario de Informacion Solicitada";


$encabezado = "From: $nombre <$email>";
$encabezado .= "\nReply-To: $email";
$encabezado .= "\nX-Mailer: PHP/" . phpversion();


$ip=$REMOTE_ADDR;


$mensaje .= "NOMBRE: $nombre\n";
$mensaje .= "Telefono: $telefono\n";
$mensaje .= "EMAIL: $email\n";
$mensaje .= "COMENTARIOS: $comentarios\n";

if($departamento == "0"){
echo "Selecciona un destino para el mensaje";
exit;
}



mail($_POST['departamento'], $_POST['asunto'], $_POST['mensaje']);


{
echo "<script languaje=javascript>".
"alert(\"THE MESSAGE COULD NOT BE COMMANDED!!!!\");".
"location.href=\"contactar.html\";".
"</script>";

}
else
{

echo "<script languaje=javascript>".
"alert(\"Su Mensaje se ha enviado Correctamente!!!!\");".
"location.href=\"../index.html\";".
"</script>";
}

?>
</php>

bueno eso es todo lo que tengoa ver si alguien me puede ayudar que llevo varios dias y no doy con la tecla , gracias y un salu2.
  #4 (permalink)  
Antiguo 06/02/2009, 09:51
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Alguien me podria ayudar con un formulario simple?

Hola armengual2,

Revisa este link: http://www.php.net/variables.external me imagino quieres enviar un correo por lo que también te invito a leer las FAQs de este foro.

Saludos
  #5 (permalink)  
Antiguo 06/02/2009, 09:57
Avatar de XLogus  
Fecha de Ingreso: noviembre-2008
Ubicación: AQP
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 19
Respuesta: Alguien me podria ayudar con un formulario simple?

La verdad haz hecho una ensalada de codigo, el uso de request esta desfasado, actualmente se usa o GET o POST, no entiendo para que haz hecho una validación javascript en el PHP, si querias enviar un correo sin recargar, mejor usabas ajax, pero nunca se anda mostrando mensajes javascript de esa form.

La verdad yo te recomendaría rehacer todo tu formulario, te dejo como guia este tutorial
  #6 (permalink)  
Antiguo 06/02/2009, 10:01
 
Fecha de Ingreso: septiembre-2003
Mensajes: 288
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Alguien me podria ayudar con un formulario simple?

gracias por contestar. ese link ya lo habia visitado pero por desgracia no tengo ni idea de php por lo pronto, espero ponerme a ello en breve, este codigo que te he puesto arriba lo saque de este foro y me iba muy bien pero se complico cuando el cliente me dice que quiere que ese formulario se pueda enviar a un departamento indicado en dicho formulario y hay me pierdo, por eso he preguntado, gracias y un salu2
  #7 (permalink)  
Antiguo 06/02/2009, 10:28
Avatar de XLogus  
Fecha de Ingreso: noviembre-2008
Ubicación: AQP
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 19
Respuesta: Alguien me podria ayudar con un formulario simple?

Ahora si esta clara tu pregunta, pero tu codigo es muy enredado, puedes usar el ejemplo del tutorial que te pasé y al php simplemente le agregas los campos que te faltan. Para definir a que correo debe ir agrega a tu php un case para que identifique el correo al cual debe ser enviado.
  #8 (permalink)  
Antiguo 07/02/2009, 10:50
 
Fecha de Ingreso: septiembre-2003
Mensajes: 288
Antigüedad: 20 años, 7 meses
Puntos: 0
Respuesta: Alguien me podria ayudar con un formulario simple?

gracias por contestar , el problema que tengo es que no se como hacer para que antes del enviar haya un desplegable con varios departamentos para que el cliente pueda elegir a donde va destinado.gracias y un salu2.
  #9 (permalink)  
Antiguo 07/02/2009, 11:06
Avatar de XLogus  
Fecha de Ingreso: noviembre-2008
Ubicación: AQP
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 19
Respuesta: Alguien me podria ayudar con un formulario simple?

Es que no hace falta hacer eso, pon ese combo dentro de tu formulario, entonces en tu formulario tendrias tus campos y ademas el combo que te permite elegir a que departamento vas a enviarlo.
Luego php recoge el valor del combo y usando un case decide a que correo enviar
  #10 (permalink)  
Antiguo 07/02/2009, 11:16
 
Fecha de Ingreso: marzo-2003
Mensajes: 133
Antigüedad: 21 años, 1 mes
Puntos: 0
Respuesta: Alguien me podria ayudar con un formulario simple?

perdon por meter mi cuchara pero creo que a lo que se refiere armengual2 es que desea saber como se hace.... es decir los pasos q tiene q hacer para poder hacer lo q ya todos sabemos q kiere.... me encantaria decirlo pero yo tampoco se jejejejeje saludos y gracias por todo amigos........
  #11 (permalink)  
Antiguo 07/02/2009, 19:14
Avatar de XLogus  
Fecha de Ingreso: noviembre-2008
Ubicación: AQP
Mensajes: 495
Antigüedad: 15 años, 5 meses
Puntos: 19
Respuesta: Alguien me podria ayudar con un formulario simple?

Si no tienes claro como tendría que ser el formulario es porque no conoces el html, ya expliqué en un post que hay que empezar por el principio, en fin tu formulario seria algo asi (ojo solo voy a dar la idea, no se te ocurra que puedes copiar y pegar)
Código HTML:
<form id="enviar_mail" name="enviar_mail" method="post" action="enviacorreo.php">
<div id="Layer2">
<input name="nombre" type="text" id="nombre" size="42" class="tempo" />
</div>
<div id="Layer3">
<input name="telefono" type="text" id="telefono" size="42" maxlength="9" class="tempo" />
</div>
<div id="Layer4">
<input name="email" type="text" id="email" size="42" class="tempo" />
</div>
<div id="Layer5">
<textarea name="comentarios" cols="65" rows="7" id="comentarios" class="tempo"></textarea>
</div>
<div id="Layer6">
<select name="departamento" id="departamento">
<option value="[email protected]">Presidente</option>
<option value="[email protected]">Oficina</option>
<option value="[email protected]">Tesorería</option>
<option value="[email protected]">Director Tiro al Plato</option>
<option value="[email protected]">Director Tiro Pichón</option>
<option value="0" selected="selected">Seleccion el destino</option>
</select>
</div>
<div id="Layer7">
<input name="Enviar" type="submit" id="enviar" value="Enviar" />
</div>
<div id="Layer8">
<input name="limpiar" type="reset" id="limpiar" value="Limpiar " />
</div>
</FORM> 
¿No hay distinto? no, no se requiere nada distinto no entiendo porque le metes un combo box al php, NO, no se necesita. Imagino que quieres validar el combo, pero para eso mejor que le de unmensaje simple y lo rebote al usuario.

Y en el php
Código PHP:
if ($email=="") {
   echo 
'Tu email no es valido, <a href="miformulario.html">Regresar</a>';
} else {
$asunto "Formulario de Informacion Solicitada";
$encabezado "From: $nombre <$email>";
$encabezado .= "\nReply-To: $email";
$encabezado .= "\nX-Mailer: PHP/" phpversion();
$ip=$REMOTE_ADDR;
$mensaje .= "NOMBRE: $nombre\n";
$mensaje .= "Telefono: $telefono\n";
$mensaje .= "EMAIL: $email\n";
$mensaje .= "COMENTARIOS: $comentarios\n";
mail($_POST['departamento'], $_POST['asunto'], $_POST['mensaje']); 

Hasta donde veo tu comando mail esta mal, ¿Por qué no le envias el encabezado? segundo no uses request usa $_POST[mivariable]
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 08:15.