| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
CARSANTEL Invitado
|
Publicado: Lun Ene 24, 2005 12:52 pm Asunto: Crear un formulario de contacto con PHP |
|
|
Hola, no tengo ni idea de PHP, entiendo muy poco el HTML, pero si pudieseis ayudarme a crear un formulario de envío de mail sin que el usuario tenga que usar su e-mail. Muchas gracias, no se si me e explicado bien cualquier consulta, aquí carsan@carsantel.com
 |
|
| Volver arriba |
|
 |
 |
Vulkano Site Admin
Registrado: 25 Oct 2004 Mensajes: 170
|
Publicado: Lun Ene 24, 2005 1:01 pm Asunto: |
|
|
Hola Carsantel,
Para enviar los datos de un formulario mediante PHP puedes utilizar el código que te enviamos a continuación. Sólo tienes que personalizar las variables de configuración, guardarlo en un fichero con extensión .php y hacer que el formulario envie los datos mediante el método POST a este fichero.
| Código: |
<?php
/* Variables de configuración */
$de = 'nombre@dominio.com'; // Remitente del mensaje
$para = 'nombre@dominio.com'; // Destinatario del mensaje
$asunto = 'Formulario web'; // Asunto del mensaje
$pagina_final = 'fin.html'; // Página a redirigir tras el envío
/* Fin configuración */
if ($_POST) { $campos = $_POST;
} else { die('ERROR: Formulario sin datos.');
}
while ( list($key,$val) = each($campos) ) {
$message.= "$key: $val\r\n";
}
mail($para,$asunto,$message,"From: $de","-f$de");
header("Location: $pagina_final");
?>
|
Saludos, _________________ VULKANO SERVICIOS TÉCNICOS S.L.
Alojamiento Web, Hosting, Registro de Dominios |
|
| Volver arriba |
|
 |
 |
CARSANTEL Invitado
|
Publicado: Mie Ene 26, 2005 11:07 am Asunto: Gracias por el código, pero tengo alguna duda. |
|
|
Hola, otra vez. tengo un formulario de envío que lo mando al archivo que he creado con el código que me diste y se llama cont.php. Pero al pulsar el boton enviar no lo manda al archivo cont.php si no a: http://www.carsantel.com/_derived/nortbots.htm.
El código de mi formulario es el siguiente:
<html>
<head>
<meta http-equiv="Content-Language" content="es">
<meta name="GENERATOR" content="Microsoft FrontPage 5.0">
<meta name="ProgId" content="FrontPage.Editor.Document">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>Nombre</title>
</head>
<body>
<form method="POST" action="cont.php" onSubmit="location.href='cont.php';return false;" webbot-onSubmit>
<!--webbot bot="SaveResults" s-label-fields="TRUE" u-file="http://www.carsantel.com/cont.php" s-format="TEXT/CSV" startspan --><strong>[Componente Guardar resultados de FrontPage]</strong><!--webbot bot="SaveResults" endspan i-checksum="47215" --><div align="center">
<center>
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="52%" id="AutoNumber1" height="1">
<tr>
<td width="50%" height="22">Nombre:</td>
<td width="50%" height="22"> <input type="text" name="T1" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">Apellidos:</td>
<td width="50%" height="22"> <input type="text" name="T2" size="20"></td>
</tr>
<tr>
<td width="50%" height="22">E-mail: </td>
<td width="50%" height="22"> <input type="text" name="T3" size="20"></td>
</tr>
<tr>
<td width="50%" height="21">Repite el e-mail:</td>
<td width="50%" height="21"> <input type="text" name="T4" size="20"></td>
</tr>
<tr>
<td width="50%" height="1">Observaciones:</td>
<td width="50%" height="1" rowspan="2">
<textarea rows="10" name="S1" cols="30"></textarea></td>
</tr>
<tr>
<td width="50%" height="9"> <p> </p>
<p> </p>
<p> </td>
</tr>
<tr>
<td width="50%" height="19">
<input type="submit" value="Enviar" name="B1" style="float: right"></td>
<td width="50%" height="19"><input type="reset" value="Restablecer" name="B2"></td>
</tr>
</table>
</center>
</div>
</form>
</body>
</html>
Estoy haciendo el formulario con Frontpage, es el programa que se usar y el Dreamweaver no se me da muy bien. Pero me imagino que será alguna línea que este mal.
El código de cont.php una vez modificado del tuyo es el siguiente:
<?php
/* Variables de configuración */
$de = 'nombre@dominio.com'; // Remitente del mensaje
$para = 'form@carsantel.com'; // Destinatario del mensaje
$asunto = 'Contacto web'; // Asunto del mensaje
$pagina_final = 'final.htm'; // Página a redirigir tras el envío
/* Fin configuración */
if ($_POST) { $campos = $_POST;
} else { die('ERROR: Formulario sin datos.');
}
while ( list($key,$val) = each($campos) ) {
$message.= "$key: $val\r\n";
}
mail($para,$asunto,$message,"From: $de","-f$de");
header("Location: $pagina_final");
?>
MUCHAS GRACIAS POR TU TIEMPO!!!! ESPERO TU RESPUESTA. |
|
| Volver arriba |
|
 |
 |
Vulkano Site Admin
Registrado: 25 Oct 2004 Mensajes: 170
|
Publicado: Mie Ene 26, 2005 12:35 pm Asunto: |
|
|
Antes de nada, según mi experiencia personal, te recomendaría usar cualquier otro programa de diseño antes que Front Page, ya que este tiene tendencia a provocar errores como este.
Revisando el código de tu página creo que el problema viene por la sección que rodea al inicio de tu formulario. Prueba a poner esto en su lugar:
| Código: |
<body>
<form method="POST" action="cont.php">
<div align="center">
<center>
|
Saludos, _________________ VULKANO SERVICIOS TÉCNICOS S.L.
Alojamiento Web, Hosting, Registro de Dominios |
|
| Volver arriba |
|
 |
 |
CARSANTEL Invitado
|
Publicado: Mie Ene 26, 2005 5:40 pm Asunto: |
|
|
MUCHAS GRACIAS DE NUEVO,
Modifiqué esa línea y ahora lo que me aparece es un mensaje distinto, pero no va a la página final, si no a una distinta, y me aparece el siguiente mensaje:
Method Not Allowed
The requested method POST is not allowed for the URL /form.htm.
--------------------------------------------------------------------------------
Apache/1.3.26 Server at carsantel.com Port 80
No se qué puede significar o qué estoy haciendo mal.
Mi codigo de la página sigue siendo el mismo modificando lo que me dijiste. Mi pregunta es: Si no es mucho pedir podrías hacerme un formulario básico tu, que lo envie perfectamente y yo solo le modifico los campos. si te parece bien, si no, ya me has ayudado bastante, GRACIAS. |
|
| Volver arriba |
|
 |
 |
Vulkano Site Admin
Registrado: 25 Oct 2004 Mensajes: 170
|
Publicado: Mie Ene 26, 2005 5:52 pm Asunto: |
|
|
Este error normalmente se produce si no has definido el destino del formulario mediante el atributo "action". Por favor, verifica que la etiqueta "<form>" contiene lo siguiente:
<form method="POST" action="cont.php">
Saludos, _________________ VULKANO SERVICIOS TÉCNICOS S.L.
Alojamiento Web, Hosting, Registro de Dominios |
|
| Volver arriba |
|
 |
 |
CARSANTEL Invitado
|
Publicado: Mie Ene 26, 2005 6:51 pm Asunto: MUCHISIMAS GRACIAS POR TODO |
|
|
MUCHISIMA GRACIAS POR TODO!!!! YA ME FUNCIONA
GRACIAS DE NUEVO, Y EN UNOS DIAS NO DEJEIS DE VISITAR WWW.CARSANTEL.COM
Y MI TIENDA EN MADRID.
GRACIAS Y MIL GRACIAS.
UN SALUDO, CARLOS SANTOS. |
|
| Volver arriba |
|
 |
 |
SkateJack Invitado
|
Publicado: Dom Abr 17, 2005 1:42 am Asunto: Ayuda!! |
|
|
Bueno, primero que nada gracias, porque su codigo de fuente de arriba me fue util..
el tema es que los datos sacados el form, no llegan al fichero php...
Porqué no sé...
me decia, "error: formulario sin datos", etc..
Saque el If, y ta, lo envia
pero llega en blanco..
que pasa??
porque no llegan los datos??
Gracias! |
|
| Volver arriba |
|
 |
 |
Vulkano Site Admin
Registrado: 25 Oct 2004 Mensajes: 170
|
Publicado: Mie Abr 20, 2005 6:51 pm Asunto: |
|
|
Hola SkateJack,
Seguramente estas enviando los datos del formulario por el método GET en lugar del POST del ejemplo. Prueba a cambiar la siguiente línea en el código PHP del script:
| Código: |
if ($_POST) { $campos = $_POST;
|
por esto:
| Código: |
if ($_GET) { $campos = $_GET;
|
Saludos, _________________ VULKANO SERVICIOS TÉCNICOS S.L.
Alojamiento Web, Hosting, Registro de Dominios |
|
| Volver arriba |
|
 |
 |
Invitado
|
Publicado: Lun Jun 06, 2005 5:49 pm Asunto: |
|
|
Hola Vulkano,
En primer lugar, agradecerte las explicaciones que das y que me están siendo de gran utilidad.
Si no te importa, abuso un poco de tu buena voluntad para preguntarte algo sobre estos formularios en .php.
Tras mucho buscar en la red, el tuyo es el único que me funciona (soy demasiado novato). Sin embargo, una vez enviado el formulario me da 3 problemas:
1,. No revisa si está en blanco o no (lo hace el propio cont.php?)
2.- Me redirige a una página diferente a la de "gracias.htm" que tengo creada y me da el siguiente mensaje:
Warning: Cannot modify header information - headers already sent by (output started at /var/www/congeladosjuldan/juldan/cont.php:9) in /var/www/congeladosjuldan/juldan/cont.php on line 29
3.- El formulario me viene al correo electrónico como "nombre@dominio.com". ¿Hay alguna fórmula para que aparezca el correo de quien lo envía?
Gracias por anticipado |
|
| Volver arriba |
|
 |
 |
Invitado
|
Publicado: Mar Jun 07, 2005 7:59 pm Asunto: |
|
|
ya está solucionado.
El problema era que en el documento "cont.php" no hay que poner <html><body> etc, sólo el codigo que está indicado arriba
Saludos, |
|
| Volver arriba |
|
 |
 |
Luis Invitado
|
Publicado: Vie Jun 17, 2005 2:43 am Asunto: husmeando |
|
|
| hola yo andaba buscando un formulario y este es el unico que me ha funcionado correctamente WoW! gracias Vulkano y esta pagina esta en mis BOOKMARKS jejejs asi ke les dare un pokitin de molestia. Saludos |
|
| Volver arriba |
|
 |
 |
Tabunk
Registrado: 16 Jun 2005 Mensajes: 3
|
Publicado: Vie Jun 17, 2005 2:48 am Asunto: |
|
|
Realmente ya me estoy enfadando bastante :@
Llevo unas 4 horas intentando de q funcione pero no sucede nada de nada
Abri un nuevo tema para ver si me podian ayudar y aun nada :s
Aqui les dejo un poco de informacion para ver si me pueden ayudar
La web la estoy hosteando en mi maquina con APACHE SERVER
Hago todo tal cual como lo indican en el post pero aun no sucede nada
Alguien me va a brindar ayuda plis ?
mi msn es dannykey3@hotmail.com , si alguien me pudise ayudar por ahi seria genial
Atte
Dannyk Astudillo |
|
| Volver arriba |
|
 |
 |
Pilar Invitado
|
Publicado: Jue Jun 30, 2005 1:17 am Asunto: formulario |
|
|
hola me llamo Pilar y yo uso Front Pge kisiera ke me ayuden a crear un formulario de datos y ke me llegue a mi mail toda la informacion, sé qe esto es posible pero no se como hacerlo, gracias de antemano.
Pilar |
|
| Volver arriba |
|
 |
 |
Vulkano Site Admin
Registrado: 25 Oct 2004 Mensajes: 170
|
Publicado: Jue Jun 30, 2005 2:27 pm Asunto: |
|
|
Hola Pilar,
Siento no poder ayudarte pero no ofrecemos soporte sobre el uso de programas especificos. Tal vez si tu alojamiento dispone de PHP puedes utilizar los ejemplos de este foro. Si no, a lo mejor algun usuario de Front Page te puede echar una mano.
Saludos, _________________ VULKANO SERVICIOS TÉCNICOS S.L.
Alojamiento Web, Hosting, Registro de Dominios |
|
| Volver arriba |
|
 |
 |
|
|
Puede publicar nuevos temas en este foro No puede responder a temas en este foro No puede editar sus mensajes en este foro No puede borrar sus mensajes en este foro No puede votar en encuestas en este foro
|
|