No puedo enviar formulario por PHP
Resuelto/Cerrado
Consulta también:
- Formulario de contacto html que llegue a mi correo sin php
- Formulario HTML que llegue a mi correo ✓ - Foro de webmastering
- Formulario de contacto php con envio a correo electronico - Guide
- Recuperar cuenta de facebook sin correo sin teléfono y sin contraseña ✓ - Foro Facebook
- Recuperar cuenta de yahoo sin correo alternativo ni teléfono - Guide
- No es posible contactar a una cuenta inhabilitada instagram - Foro de redes
54 respuestas
Gracias tucuta, no he probado el el código que has publicado, pero creo que en este sitio, esta tendría que ser la forma de funcionar y no pidiendo dinero. Gracias de nuevo
hola sabes si ahy problemas en hotmail de enviar corros porque no hay maneras hoy de que me funsione gracias
hola tucuta me gustaria me ayudaras a usar el codigo que publicaste necesito que los comentarios de una pagina informativa hecha en html me lleguen a mi correo en dianbeth@gamail.com pues es que no se casi de php y no se si tu codigo me funcione para una pagina exclusivamente informativa ojala me respondas pronto
gracias
gracias
¿No encontraste la respuesta que buscabas?
Haz una pregunta
hola
tucuta soy yo otra ves gracias por la respuesta pero al parecer escribi mal mi correo y no me llego tu correo a mi correo es cual dianbeth@gmail.com ojala puedas mandarmelo de nuevo bueno muchas gracias hasta luego.
tucuta soy yo otra ves gracias por la respuesta pero al parecer escribi mal mi correo y no me llego tu correo a mi correo es cual dianbeth@gmail.com ojala puedas mandarmelo de nuevo bueno muchas gracias hasta luego.
Muchas gracias, me sirvio bastante el formulario.
Lo unico que me gustaria que en vez de pasar a otra hoja, solo muestre un mensaje...
Saludos
Lo unico que me gustaria que en vez de pasar a otra hoja, solo muestre un mensaje...
Saludos
Carito, ponle las siguientes líneas al inicio de tu código:
ini_set('SMTP',"165.190.14.42");
ini_set('smtp_port','25');
... los dígitos "165.190.14.42" son por el servidor por donde saldrá tu correo, en este caso sería el servidor donde tienes alojada tu cuenta.
espero te sirva de algo, a mí me funciona a la perfección, esos números son ficticios, pon los tuyos, los reales a tu código
ini_set('SMTP',"165.190.14.42");
ini_set('smtp_port','25');
... los dígitos "165.190.14.42" son por el servidor por donde saldrá tu correo, en este caso sería el servidor donde tienes alojada tu cuenta.
espero te sirva de algo, a mí me funciona a la perfección, esos números son ficticios, pon los tuyos, los reales a tu código
ESTA INFORMACION LA GRABAS EN EL ARCHIVO formulario.php
<body >
<form name='formulario' id='formulario' method='post' action='enviar.php' target='_self' enctype="multipart/form-data">
<p> </p>
<p align="center" class="style1">FAVOR DE PONER SUS DATOS COMPLETOS PARA RESPONDER ALGUNA PREGUNTA </p>
<p align="center"> </p>
<p> </p>
<table width="762" align="center">
<tr>
<td width="69"><div align="right"><em><strong>Nombre</strong></em></div></td>
<td width="148"><input name='Nombre' type='text' id='Nombre' maxlength="30" /></td>
<td width="85"><div align="right"><strong><em>E-mail</em></strong></div></td>
<td width="186"><input name='email' type='text' id='email' maxlength="40" /></td>
<td width="56"><div align="right"><em><strong>Asunto</strong></em></div></td>
<td width="190"><input name='asunto' type='text' id='asunto' maxlength="20" /></td>
</tr>
</table>
<p> </p>
<table width="761" height="73" align="center">
<tr>
<td width="205"><div align="right"><strong><em>Adjuntar archivo:</em></strong></div></td>
<td width="229"><input type='file' name='archivo1' id='archivo1' /></td>
<td width="54"><div align="right"><strong><em>Mensaje</em></strong></div></td>
<td width="197"><textarea name="mensaje" cols="30" rows="2" id="mensaje"></textarea></td>
<td width="52"><input type='submit' value='Enviar' /></td>
</tr>
</table>
<p> </p>
<p align="center"> </p>
</form>
</body>
LOS CAMPOS DEL FORMULARIO LOS PUEDES CAMBIAR OJO CAMBIA TAMBIEN LOS NOMBRES EN EL ARCHIVO
Y ESTA OTRA EN EL ARCHIVO enviar.php
<body>
<p>
<?php
function form_mail($sPara, $sAsunto, $sTexto, $sDe)
{
$bHayFicheros = 0;
$sCabeceraTexto = "";
$sAdjuntos = "";
if ($sDe)$sCabeceras = "From:".$sDe."\n";
else $sCabeceras = "";
$sCabeceras .= "MIME-version: 1.0\n";
foreach ($_POST as $sNombre => $sValor)
$sTexto = $sTexto."\n".$sNombre." = ".$sValor;
foreach ($_FILES as $vAdjunto)
{
if ($bHayFicheros == 0)
{
$bHayFicheros = 1;
$sCabeceras .= "Content-type: multipart/mixed;";
$sCabeceras .= "boundary=\"--_Separador-de-mensajes_--\"\n";
$sCabeceraTexto = "----_Separador-de-mensajes_--\n";
$sCabeceraTexto .= "Content-type: text/plain;charset=iso-8859-1\n";
$sCabeceraTexto .= "Content-transfer-encoding: 7BIT\n";
$sTexto = $sCabeceraTexto.$sTexto;
}
if ($vAdjunto["size"] > 0)
{
$sAdjuntos .= "\n\n----_Separador-de-mensajes_--\n";
$sAdjuntos .= "Content-type: ".$vAdjunto["type"].";name=\"".$vAdjunto["name"]."\"\n";;
$sAdjuntos .= "Content-Transfer-Encoding: BASE64\n";
$sAdjuntos .= "Content-disposition: attachment;filename=\"".$vAdjunto["name"]."\"\n\n";
$oFichero = fopen($vAdjunto["tmp_name"], 'r');
$sContenido = fread($oFichero, filesize($vAdjunto["tmp_name"]));
$sAdjuntos .= chunk_split(base64_encode($sContenido));
fclose($oFichero);
}
}
if ($bHayFicheros)
$sTexto .= $sAdjuntos."\n\n----_Separador-de-mensajes_----\n";
return(mail($sPara, $sAsunto, $sTexto, $sCabeceras));
}
//cambiar aqui el email
if (form_mail("AQUI PONES TU MAIL O EL MAIL A DONDE LO QUIERAS ENVIAR", $_POST[asunto],
"Los datos introducidos en el formulario son:\n\n", $_POST[email]))
?>
</p>
<p align="center"><em><strong><span class="Estilo1">GRACIAS POR ENVIAR SUS COMENTARIOS</span></strong></em></p>
<p align="center"><a href="index.html" target="_parent">REGRESAR A LA PAGINA PRINCIPAL</a></p>
</body>
<body >
<form name='formulario' id='formulario' method='post' action='enviar.php' target='_self' enctype="multipart/form-data">
<p> </p>
<p align="center" class="style1">FAVOR DE PONER SUS DATOS COMPLETOS PARA RESPONDER ALGUNA PREGUNTA </p>
<p align="center"> </p>
<p> </p>
<table width="762" align="center">
<tr>
<td width="69"><div align="right"><em><strong>Nombre</strong></em></div></td>
<td width="148"><input name='Nombre' type='text' id='Nombre' maxlength="30" /></td>
<td width="85"><div align="right"><strong><em>E-mail</em></strong></div></td>
<td width="186"><input name='email' type='text' id='email' maxlength="40" /></td>
<td width="56"><div align="right"><em><strong>Asunto</strong></em></div></td>
<td width="190"><input name='asunto' type='text' id='asunto' maxlength="20" /></td>
</tr>
</table>
<p> </p>
<table width="761" height="73" align="center">
<tr>
<td width="205"><div align="right"><strong><em>Adjuntar archivo:</em></strong></div></td>
<td width="229"><input type='file' name='archivo1' id='archivo1' /></td>
<td width="54"><div align="right"><strong><em>Mensaje</em></strong></div></td>
<td width="197"><textarea name="mensaje" cols="30" rows="2" id="mensaje"></textarea></td>
<td width="52"><input type='submit' value='Enviar' /></td>
</tr>
</table>
<p> </p>
<p align="center"> </p>
</form>
</body>
LOS CAMPOS DEL FORMULARIO LOS PUEDES CAMBIAR OJO CAMBIA TAMBIEN LOS NOMBRES EN EL ARCHIVO
Y ESTA OTRA EN EL ARCHIVO enviar.php
<body>
<p>
<?php
function form_mail($sPara, $sAsunto, $sTexto, $sDe)
{
$bHayFicheros = 0;
$sCabeceraTexto = "";
$sAdjuntos = "";
if ($sDe)$sCabeceras = "From:".$sDe."\n";
else $sCabeceras = "";
$sCabeceras .= "MIME-version: 1.0\n";
foreach ($_POST as $sNombre => $sValor)
$sTexto = $sTexto."\n".$sNombre." = ".$sValor;
foreach ($_FILES as $vAdjunto)
{
if ($bHayFicheros == 0)
{
$bHayFicheros = 1;
$sCabeceras .= "Content-type: multipart/mixed;";
$sCabeceras .= "boundary=\"--_Separador-de-mensajes_--\"\n";
$sCabeceraTexto = "----_Separador-de-mensajes_--\n";
$sCabeceraTexto .= "Content-type: text/plain;charset=iso-8859-1\n";
$sCabeceraTexto .= "Content-transfer-encoding: 7BIT\n";
$sTexto = $sCabeceraTexto.$sTexto;
}
if ($vAdjunto["size"] > 0)
{
$sAdjuntos .= "\n\n----_Separador-de-mensajes_--\n";
$sAdjuntos .= "Content-type: ".$vAdjunto["type"].";name=\"".$vAdjunto["name"]."\"\n";;
$sAdjuntos .= "Content-Transfer-Encoding: BASE64\n";
$sAdjuntos .= "Content-disposition: attachment;filename=\"".$vAdjunto["name"]."\"\n\n";
$oFichero = fopen($vAdjunto["tmp_name"], 'r');
$sContenido = fread($oFichero, filesize($vAdjunto["tmp_name"]));
$sAdjuntos .= chunk_split(base64_encode($sContenido));
fclose($oFichero);
}
}
if ($bHayFicheros)
$sTexto .= $sAdjuntos."\n\n----_Separador-de-mensajes_----\n";
return(mail($sPara, $sAsunto, $sTexto, $sCabeceras));
}
//cambiar aqui el email
if (form_mail("AQUI PONES TU MAIL O EL MAIL A DONDE LO QUIERAS ENVIAR", $_POST[asunto],
"Los datos introducidos en el formulario son:\n\n", $_POST[email]))
?>
</p>
<p align="center"><em><strong><span class="Estilo1">GRACIAS POR ENVIAR SUS COMENTARIOS</span></strong></em></p>
<p align="center"><a href="index.html" target="_parent">REGRESAR A LA PAGINA PRINCIPAL</a></p>
</body>
romii015
Mensajes enviados
3
Fecha de inscripción
jueves, 5 de febrero de 2009
Estatus
Miembro
Última intervención
jueves, 5 de febrero de 2009
5 feb 2009 a las 19:24
5 feb 2009 a las 19:24
http://es.ccm.net/forum/affich 97685 msn
entren i ayudenmee , porfavorr :S
entren i ayudenmee , porfavorr :S
newmix
Mensajes enviados
16
Fecha de inscripción
lunes, 16 de marzo de 2009
Estatus
Miembro
Última intervención
sábado, 5 de septiembre de 2009
19
16 mar 2009 a las 23:08
16 mar 2009 a las 23:08
deberia de funcionarte, yo elaboro un formulario, los dos son extension php, el primero contiene el formulario de la sig manera:
Bienvenido a esta pagina la hora actual es:<b>
<?PHP
include ("pag2.php");
?>
<br><br>
<form name="formulario" method="post" action="">
<span class="Estilo3">Nombre</span> <input type="text" name="nombre" size="20" maxlength="20">
como puedes ver: en include incluyo la libreria de mis funciones php que validan cada textfield del formulario el action="" para que regrese a la misma pag del formulario. si los datos son incorrectos en la misma pag del formulario imprimo los errores, estas usando XAMPP??
Bienvenido a esta pagina la hora actual es:<b>
<?PHP
include ("pag2.php");
?>
<br><br>
<form name="formulario" method="post" action="">
<span class="Estilo3">Nombre</span> <input type="text" name="nombre" size="20" maxlength="20">
como puedes ver: en include incluyo la libreria de mis funciones php que validan cada textfield del formulario el action="" para que regrese a la misma pag del formulario. si los datos son incorrectos en la misma pag del formulario imprimo los errores, estas usando XAMPP??
lo que pasa es que a los que tienen ese tipo de error, deben de usar el XAMPP, he instalarlo con apache para que puedan ver sus paginas en su equipo personal, ademas, este es un foro de ayuda, no esta mal cobrar por lo que se sabe, pero yo solo quiero ayudar y sin cobrar, ya que =mente yo podria necesitar ayuda de alguien mas. hise un formulario de lo mas sencillo, pero por falta de tiempo no lo he hecho mejor, instalate el xampp asi no tendras ese tipo de error.
samgamju
Mensajes enviados
1
Fecha de inscripción
lunes, 6 de julio de 2009
Estatus
Miembro
Última intervención
lunes, 6 de julio de 2009
6 jul 2009 a las 10:13
6 jul 2009 a las 10:13
Tucuta: Mi cuenta MSN es jasamame@hotmail.com
Gracias
JULIO
Gracias
JULIO
hola buenas noches
tengo un problema para crear ye enviar un formulario de contacto muy basico
nombre telefono e-mail
pero siempre me sale algun error..
tengo un problema para crear ye enviar un formulario de contacto muy basico
nombre telefono e-mail
pero siempre me sale algun error..
a ver si te sirve este tutorial
http://ww11.amigosdeloajeno.mihost.biz/%C2%BFcomo-filtrar-informacion-que-llega-desde-un-formulario-con-php/
http://ww11.amigosdeloajeno.mihost.biz/%C2%BFcomo-filtrar-informacion-que-llega-desde-un-formulario-con-php/
newmix
Mensajes enviados
16
Fecha de inscripción
lunes, 16 de marzo de 2009
Estatus
Miembro
Última intervención
sábado, 5 de septiembre de 2009
19
12 jul 2009 a las 21:58
12 jul 2009 a las 21:58
ya cierren este hilo, hombre.
Estimados y estimadas
Yo tenía un problema similar, ya que mi archivo php, me enviaba el correo, pero iba con el cuerpo de texto vacío, sin las variables y las constantes.
Copio a ustedes la ayuda generosa y desinteresada del compa Oscar para resolver este problema, yo no hago más que devolver la mano a aquellos que lo necesiten.
saludos fraternos
Makarenko
Peguen esto en su archivo html:
<form action="/send.php" method="post" id="contacto" onsubmit="MM_validateForm('nombre','','R','cargo','','R','empresa','','R','Fono','','RisNum','email','','RisEmail');return document.MM_returnValue">
<table width="498" border="0">
<tr>
<td width="114"><label>Nombre Completo: </label></td>
<td width="374"><input name="nombre" type="text" id="nombre" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Empresa:</td>
<td><input name="empresa" type="text" id="empresa" size="50" maxlength="30" /></td>
</tr>
<tr>
<td>Cargo:</td>
<td><input name="cargo" type="text" id="cargo" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Teléfono:</td>
<td><input name="Fono" type="text" id="Fono" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Email:</td>
<td><input name="email" type="text" id="email" size="50" maxlength="50" /></td>
</tr>
<tr>
<td valign="top">Comentarios:</td>
<td><textarea name="comentario" cols="50" rows="6" wrap="physical" id="comentario"></textarea></td>
</tr>
</table>
<p>
<label>
<input type="submit" name="Enviar" id="Enviar" value=" Enviar " />
</label>
<input type="reset" name="Limpiar" id="Limpiar" value=" Limpiar " />
</p>
<label></label>
</form>
Luego hagan un archivo php con el siguiente código:
<?php
$nombre = $_POST['nombre'];
$empresa = $_POST['empresa'];
$cargo = $_POST['cargo'];
$Fono = $_POST['Fono'];
$email = $_POST['email'];
$comentario = $_POST['comentario'];
$header = 'From: ' . $email . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje = "
Esta es la Información de Mi Sitio Web:
El nombre: ".$nombre."
Nombre de la Empresa: ".$empresa."
Cargo: ".$cargo."
Telefono: ".$Fono."
Email: ".$email."
Comentario de ".$nombre.": ".$email."
";
$para = "EMAIL DE DESTINO DEL FOMULARIO";
$asunto = 'Mensaje desde sitio WEB';
mail($para, $asunto, $mensaje, "From: ".$nombre);
?>
Espero les sirva
un abrazo fraterno
M.G.
Yo tenía un problema similar, ya que mi archivo php, me enviaba el correo, pero iba con el cuerpo de texto vacío, sin las variables y las constantes.
Copio a ustedes la ayuda generosa y desinteresada del compa Oscar para resolver este problema, yo no hago más que devolver la mano a aquellos que lo necesiten.
saludos fraternos
Makarenko
Peguen esto en su archivo html:
<form action="/send.php" method="post" id="contacto" onsubmit="MM_validateForm('nombre','','R','cargo','','R','empresa','','R','Fono','','RisNum','email','','RisEmail');return document.MM_returnValue">
<table width="498" border="0">
<tr>
<td width="114"><label>Nombre Completo: </label></td>
<td width="374"><input name="nombre" type="text" id="nombre" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Empresa:</td>
<td><input name="empresa" type="text" id="empresa" size="50" maxlength="30" /></td>
</tr>
<tr>
<td>Cargo:</td>
<td><input name="cargo" type="text" id="cargo" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Teléfono:</td>
<td><input name="Fono" type="text" id="Fono" size="50" maxlength="50" /></td>
</tr>
<tr>
<td>Email:</td>
<td><input name="email" type="text" id="email" size="50" maxlength="50" /></td>
</tr>
<tr>
<td valign="top">Comentarios:</td>
<td><textarea name="comentario" cols="50" rows="6" wrap="physical" id="comentario"></textarea></td>
</tr>
</table>
<p>
<label>
<input type="submit" name="Enviar" id="Enviar" value=" Enviar " />
</label>
<input type="reset" name="Limpiar" id="Limpiar" value=" Limpiar " />
</p>
<label></label>
</form>
Luego hagan un archivo php con el siguiente código:
<?php
$nombre = $_POST['nombre'];
$empresa = $_POST['empresa'];
$cargo = $_POST['cargo'];
$Fono = $_POST['Fono'];
$email = $_POST['email'];
$comentario = $_POST['comentario'];
$header = 'From: ' . $email . " \r\n";
$header .= "X-Mailer: PHP/" . phpversion() . " \r\n";
$header .= "Mime-Version: 1.0 \r\n";
$header .= "Content-Type: text/plain";
$mensaje = "
Esta es la Información de Mi Sitio Web:
El nombre: ".$nombre."
Nombre de la Empresa: ".$empresa."
Cargo: ".$cargo."
Telefono: ".$Fono."
Email: ".$email."
Comentario de ".$nombre.": ".$email."
";
$para = "EMAIL DE DESTINO DEL FOMULARIO";
$asunto = 'Mensaje desde sitio WEB';
mail($para, $asunto, $mensaje, "From: ".$nombre);
?>
Espero les sirva
un abrazo fraterno
M.G.
newmix
Mensajes enviados
16
Fecha de inscripción
lunes, 16 de marzo de 2009
Estatus
Miembro
Última intervención
sábado, 5 de septiembre de 2009
19
5 sep 2009 a las 19:38
5 sep 2009 a las 19:38
que sentidos,
17 nov 2008 a las 15:18
17 dic 2008 a las 05:36
Hice lo que tu dijiste y cree dos archivos, el index.html y el enviar.php .... a los dos le agregue obviamente la parte de <html><header> etc..... los subi a mi pagina que es un servidos gratis (webcindario.com) y me la abre sin ningun problema. La cosa es que no me llega el mail.
He usado otros formularios y con ninguno me funciona, nose porque puede ser, sera un problema del servidor?
Tambien tengo instalado apache y esas cosas y al entrar por http://localhost/index.html despues me da como resultado...
Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\AppServ\www\enviar\enviar.php on line 27
Por favor ayudame, mi mail es: fedetrans [a] hotmail.com
Muchas gracias
17 dic 2008 a las 16:07
Si no tellegan los mensajes recuerda que tienes que llamar al acrchivo que se encarga de procesar y enviar el mail, se llama desde el formulario de contacto en
<form action="enviar.php">
Recuerda actualizar la dirección de donde se encuentra el archivo porque si no nunca te van a llegar los mensajes.
Si no puedes te puedo hacer llegar los archivos a tu correo, GRATIS, solo posteame tu correo y listo.
Espero te sirva.
CHAO
17 dic 2008 a las 21:58
<form id="contacto" name="contacto" method="post" action="enviar/enviar.php">
te doi mi correo
fedetrans [@] hotmail.com (le puse lo [ ] por el spam
Muchas gracias
22 dic 2008 a las 19:11