Foros del Web » Programando para Internet » PHP »

Enviar formulario poir email mediante script PHP

Estas en el tema de Enviar formulario poir email mediante script PHP en el foro de PHP en Foros del Web. Buenas!!! Os explico mi cuestion: Tengo un formulario en HTML con sus campos (nombre, email, asunto, mensaje). En el action quiero poner un archivo .php ...
  #1 (permalink)  
Antiguo 12/01/2007, 11:27
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Enviar formulario poir email mediante script PHP

Buenas!!!

Os explico mi cuestion:

Tengo un formulario en HTML con sus campos (nombre, email, asunto, mensaje).

En el action quiero poner un archivo .php que coja todos los valores, y los mande por email (asi me evito el tema del outlook).

He visto varios temas por internet y son muy complejos y me fallan.

Me gustaria saber si alguien sabe algun sitio donde haya un script php para esto que sea sencillo o expliquen sencillo como hacerlo.(Y si puede ser, en español)
A lo mejor pido mucho

Supongo que seria metiendo los valores en variables y utilizando mail() como he visto por ahi pero no sé.

Gracias!!!
  #2 (permalink)  
Antiguo 12/01/2007, 11:35
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Enviar formulario poir email mediante script PHP

Usa la funcion mail:
http://www.php.net/manual/es/function.mail.php

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #3 (permalink)  
Antiguo 12/01/2007, 12:06
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

A ver:

Lo primero que he hecho:

El formulario en vez de .HTML lo he cambiado por .PHP porque le incluido:

<?
$Nombre= $_POST["Nombre"];
$CorreoElectronico= $_POST["CorreoElectronico"];
$telefono= $_POST["Telefono"];
$Asunto= $_POST["Asunto"];
$Mensaje= $_POST["Mensaje"];
?>

Eso es correcto para que luego vaya bien??

Luego le he puesto el action="loquesea.php" que será donde meta el script parecido a lo que me has puesto en el enlace, verdad?


Gracias!!
  #4 (permalink)  
Antiguo 12/01/2007, 16:35
Avatar de fatherjuan  
Fecha de Ingreso: mayo-2005
Ubicación: Estado de México
Mensajes: 132
Antigüedad: 19 años, 6 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

Intenta usar esta clase esta buena

http://phpmailer.sourceforge.net/tutorial.html
  #5 (permalink)  
Antiguo 13/01/2007, 05:33
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Enviar formulario poir email mediante script PHP

A ver, el formulasrio en principio puede ser HTML, esas lineas no hace falta que las incluyas, despues en el action pones action="loquesea.php", y en la pagina "loquesea.php" el codigo seria algo asi:

Código PHP:
<?
$Nombre
$_POST["Nombre"];
$CorreoElectronico$_POST["CorreoElectronico"];
$telefono$_POST["Telefono"];
$Asunto$_POST["Asunto"];
$Mensaje$_POST["Mensaje"];

$Contenido=$Nombre." con el numero de telefono: ".$telefono." ha enviado el siguiente Mail:\n\n";
$Contenido.=$Mensaje;

mail($CorreoElectronico$Asunto$Contenido);

?>
Ademas revisa esto: http://www.desarrolloweb.com/articulos/1048.php , eso si un par de notas a esta explicacion, en lugar de $HTTP_POST_VARS, usa solo $_POST, y otra nota, este codigo que te explican usa un solo archivo en lugar de dos.

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #6 (permalink)  
Antiguo 13/01/2007, 06:01
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

<?php
require("class.phpmailer.php");
$mail = new PHPMailer();
$mail->IsSMTP(); // telling the class to use SMTP
$mail->Host = "smtp.email.com"; // SMTP server
$mail->From = "[email protected]";
$mail->AddAddress("[email protected]");

$mail->Subject = "first mailing";
$mail->Body = "hi ! \n\n this is First mailing I made myself with PHPMailer !";
$mail->WordWrap = 50;

if(!$mail->Send())
{
echo "Message was not sent";
echo "Mailer Error: " . $mail->ErrorInfo;
}
else
{
echo "Message has been sent";
}
?>



Pregunta:
Este archivo se tiene que llamar a sí mismo (o sea, llamarse el archivo como la clase esa "phpmailer.php" del principio)??

Este tendria que ser el action del formulario que comenté anteriormente???

Sigo estando muy pegado, lo siento.
  #7 (permalink)  
Antiguo 13/01/2007, 06:18
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Sonrisa Re: Enviar formulario poir email mediante script PHP

Perdona Bytevamp. Mientras contestaba has posteado.

Voy a probarlo ahora mismo a ver como funciona asi.

Ahora os comento.

Gracias!!!
  #8 (permalink)  
Antiguo 15/01/2007, 05:44
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

<?
$Nombre= $_POST["Nombre"];
$CorreoElectronico= $_POST["CorreoElectronico"];
$telefono= $_POST["Telefono"];
$Asunto= $_POST["Asunto"];
$Mensaje= $_POST["Mensaje"];

$Contenido=$Nombre." con el numero de telefono: ".$telefono." ha enviado el siguiente Mail:\n\n";
$Contenido.=$Mensaje;

mail("[email protected]", $Asunto, $Contenido);
?>


Esto me da error en la linea 11 y no se porqué.
Supuestamente en en la linea de la funcion mail pero no sér lo que pasa.
  #9 (permalink)  
Antiguo 15/01/2007, 06:08
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Enviar formulario poir email mediante script PHP

Esto,........,creo que el codigo te lo puse con un errorcillo:
Código PHP:
$Nombre$_POST['Nombre'];
$CorreoElectronico$_POST['CorreoElectronico'];
$telefono$_POST['Telefono'];
$Asunto$_POST['Asunto'];
$Mensaje$_POST['Mensaje']; 
son comillas simples, no dobles, si de todos modos te sigue dando error, postea el error.

Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #10 (permalink)  
Antiguo 15/01/2007, 08:22
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

Ahora no me da error.

Me sale la pagina en blanco y no parece que me llegue ningun correo .

En principio parece que no da error en el script pr sigo igual que antes.

Hay alguna manera de verificar si lo ha mandado o algo??.

Estoy haciendo las pruebas con un servidor apache en mi propia maquina. En el "php.ini" tengo:

[mail function]
; For Win32 only.
SMTP = localhost

; For Win32 only.
sendmail_from = localhost

; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
;sendmail_path =

; Force the addition of the specified parameters to be passed as extra parameters
; to the sendmail binary. These parameters will always replace the value of
; the 5th parameter to mail(), even in safe mode.
;mail.force_extra_paramaters =


Esto no se si deberia estar asi
  #11 (permalink)  
Antiguo 16/01/2007, 05:39
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

Alguien sabe por qué me sale la pagina en blanco??

Código PHP:
<?
$Nombre
$_POST['Nombre'];
$CorreoElectronico$_POST['CorreoElectronico'];
$telefono$_POST['Telefono'];
$Asunto$_POST['Asunto'];
$Mensaje$_POST['Mensaje'];

$Contenido=$Nombre." con el numero de telefono: ".$telefono." ha enviado el siguiente Mail:\n\n";
$Contenido.=$Mensaje;

mail("[email protected]"$Asunto$Contenido);
?>

<script>
window.self.location.herf="Inicio.htm";
</script>
Supuestamente deberia ir redireccionado a la pagina incio si tuviera errores, verdad??

Pero es que sale la web en blanco sin errores.
Please!!
  #12 (permalink)  
Antiguo 16/01/2007, 09:11
Avatar de Bytevamp  
Fecha de Ingreso: junio-2005
Ubicación: /var/www/
Mensajes: 789
Antigüedad: 19 años, 6 meses
Puntos: 7
Re: Enviar formulario poir email mediante script PHP

Hola, prueba asi:

Código PHP:
<?
$Nombre
$_POST['Nombre'];
$CorreoElectronico$_POST['CorreoElectronico'];
$telefono$_POST['Telefono'];
$Asunto$_POST['Asunto'];
$Mensaje$_POST['Mensaje'];

$Contenido=$Nombre." con el numero de telefono: ".$telefono." ha enviado el siguiente Mail:\n\n";
$Contenido.=$Mensaje;

mail("[email protected]"$Asunto$Contenido);
header("Location: Inicio.htm");
?>
Saludos.
__________________
"zankius veri mach" a todos los que me habeis ayudado.
carteles para inmobiliarias || alquiler de coches
  #13 (permalink)  
Antiguo 17/01/2007, 06:40
 
Fecha de Ingreso: octubre-2006
Mensajes: 66
Antigüedad: 18 años, 2 meses
Puntos: 0
Re: Enviar formulario poir email mediante script PHP

La verdad es que me sigue saliendo en blanco despues de darle al boton de enviar.

No lo entiendo porque ni da error ni ejecuta el codigo entero, verdad?
Si lo hiciera deberia ir a la pagina principal o decir que no la encuentra o algo

No sabia que fuera tan complicado mandar un correo

Como podria detectar el fallo??. Antes puse la info de mi php.ini. Estaba bien??.

Perdonad mi pesadez.

Gracias
  #14 (permalink)  
Antiguo 11/10/2007, 18:30
 
Fecha de Ingreso: octubre-2007
Mensajes: 3
Antigüedad: 17 años, 2 meses
Puntos: 0
Sonrisa Re: Enviar formulario poir email mediante script PHP

Hola amigos, soy nuevo en esto, alguien me puede decir como agregar a este form la funcion para que tome la url en la que se esta parado y enviarla juntocon el resto de los datos del form?, se entiende, es como el famoso enviar pagina a un amigo?

Desde ya les agradezco que me puedan ayudar.
Saludos
gaston
  #15 (permalink)  
Antiguo 11/10/2007, 18:50
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años, 8 meses
Puntos: 33
Re: Enviar formulario poir email mediante script PHP

JuanMikamaN:
NO puedes enviar porque NO tienes ningun servidor de correo instalado en localhost o TU computadora.
Saludos
Y espero te ayude
Franco
  #16 (permalink)  
Antiguo 12/10/2007, 07:09
 
Fecha de Ingreso: octubre-2007
Mensajes: 3
Antigüedad: 17 años, 2 meses
Puntos: 0
Sonrisa Re: Enviar formulario poir email mediante script PHP

Gracias Franco, vos sabes de donde puedo sacar un form para enviar una pagina por mail,
  #17 (permalink)  
Antiguo 12/10/2007, 11:11
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años, 8 meses
Puntos: 33
Re: Enviar formulario poir email mediante script PHP

AQUI TIENES UN SIMPLE Y SENCILLO SCRIPT EN PHP
QUE MANDA, IMAGENES GIF Y UN ENLACE A UN TEXTO:

<?php //Envia las imagenes y el link al texto
$origen = "[email protected]"; //utilizando MIME types images/gif, etc si es depositado osea como attachment.
$destino="[email protected]"; //cuenta destino
$asunto = "probando Envio de Imagenes GIF Via Correo";
$mensaje = "Este Envio Novedoso de Imagenes es SuperRevolucionarioo. Gracias.<br>";
$mensaje .= "<img src=\"http://201.63.75.108/mailphp/pruebascorreo/Leopardo.gif\">";
$mensaje .= "<img src=\"http://201.63.75.108/mailphp/pruebascorreo/rooster1.gif\">";
$mensaje .= "<img src=\"http://201.63.75.108/mailphp/pruebascorreo/celular.gif\">";
$mensaje .= "<br><img src=\"http://201.63.75.108/mailphp/pruebascorreo/avemariaxgh.gif\">";
$mensaje .= "<br><a href=\"http://201.63.75.108/mailphp/pruebascorreo/proyectocool.txt\">AQUI PARA VER EL ARCHIVO PROYECTOCOOL.TXT!</a>";
$mensaje .= "<br>Cortesia de Francisco.";
$cabecera = "From:".$origen."\nReply-To:".$origen."\n";
$cabecera = $cabecera."X-Mailer:PHP/".phpversion()."\n";
$cabecera = $cabecera."Mime-Version: 1.0\n";
$cabecera = $cabecera."Content-Type: text/html";
mail($destino,$asunto,$mensaje,$cabecera);
echo "Correo Enviado";
?>

SALUDOS
Y ESPERO TE AYUDE
Franco
  #18 (permalink)  
Antiguo 23/07/2008, 11:27
Avatar de oswalgogra  
Fecha de Ingreso: septiembre-2007
Ubicación: En algún lugar del territorio Colombiano
Mensajes: 140
Antigüedad: 17 años, 3 meses
Puntos: 5
De acuerdo Respuesta: Enviar formulario poir email mediante script PHP

Hola a todos!
Este último script funciona , yo lo modifiqué a mi gusto y también modifiqué la directiva 'SMTP' del archivo php.ini, le puse uno de los smtps de gmail.

Para ver los smtps pueden usar este enlace: http://www.maxban.com/cgi-bin/smtp.cgi?Domain=gmail.com

Reinicié el apache y funcionó. Espero que a todos les funcione igual.

Éxitos!
__________________
Oswaldo: El que gobierna con el poder de Dios.
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.
Tema Cerrado

SíEste tema le ha gustado a 2 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 13:39.