Foros del Web » Programando para Internet » PHP »

Correo con archivo adjunto

Estas en el tema de Correo con archivo adjunto en el foro de PHP en Foros del Web. Hola es mi primer mensaje, pero llevo mucho siguindo esta web, ayudais a mucha gente sin pedir nada a cambio y eso es de admirar. ...
  #1 (permalink)  
Antiguo 11/12/2007, 07:32
 
Fecha de Ingreso: diciembre-2007
Mensajes: 14
Antigüedad: 16 años, 4 meses
Puntos: 0
Correo con archivo adjunto

Hola es mi primer mensaje, pero llevo mucho siguindo esta web, ayudais a mucha gente sin pedir nada a cambio y eso es de admirar. El problema que tengo hay varios ejemplos en este mismo foro, pero como de php no tengo ni idea pues no me entero. Yo uso un script que encontre de php y html

Quiero hacer un formulario para enviar un correo. Mas bien quiero modificar el formulario que tengo (que es con el unico que me entero) y añadirle una opcion mas para adjuntar un arhivo.

Mi formulario es el siguiente:
Código PHP:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> 
<html> 
<head> 
    <title>Mándanos tus comentarios</title> 
</head> 

<body bgcolor="#cccc66" text="#003300" link="#006060" vlink="#006060"> 
<? 
if (!$HTTP_POST_VARS){ 
?> 
<form action="envia_form_php.php" method=post> 
Nombre: <input type=text name="nombre" size=16> 
<br> 
Email: <input type=text name=email size=16> 
<br> 
Comentarios: <textarea name=coment cols=32 rows=6></textarea> 
<br> 
<input type=submit value="Enviar"> 
</form> 
<? 
}else{ 
    
//Estoy recibiendo el formulario, compongo el cuerpo 
    
$cuerpo "Formulario enviado\n"
    
$cuerpo .= "Nombre: " $HTTP_POST_VARS["nombre"] . "\n"
    
$cuerpo .= "Email: " $HTTP_POST_VARS["email"] . "\n"
    
$cuerpo .= "Comentarios: " $HTTP_POST_VARS["coment"] . "\n"

    
//mando el correo... 
    
mail("[email protected]","Formulario recibido",$cuerpo); 

    
//doy las gracias por el envío 
    
echo "Gracias por rellenar el formulario. Se ha enviado correctamente."

?> 
</body> 
</html>


Y aparte tengo como añadir en html un nuevo campo que se encargue de subir el archivo


Código PHP:
<html>

<
head>
<
meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<
title>Pagina nueva 4</title>
</
head>

<
body>

<
form enctype="multipart/form-data" method="post" action="upload.php">

<
p>Fichero:<br>
<
input type="file" name="docu" size="30"></p>

<
P><input type="submit" name="submit" value="Upload File"></p>

</
form> </body>

</
html
Pues mi pregunta es como modifico la primera parte añadiendo lo de adjuntar el archivo y que me lo añada en el correo. Quiza sea una tonteria pero lo dicho no tengo ni idea, estoy haciendolo todo buscando por google y demas.

Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 11/12/2007, 08:01
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Re: Correo con archivo adjunto

Te sugiero que para adjuntar archivos en tu correo, uses phpmailer

Saludillos.
PD. Bienvenido al foro!
  #3 (permalink)  
Antiguo 11/12/2007, 08:19
Avatar de the_scorpion  
Fecha de Ingreso: mayo-2006
Ubicación: Cuba
Mensajes: 696
Antigüedad: 17 años, 11 meses
Puntos: 3
Re: Correo con archivo adjunto

con lo que te dijo mauled
chequea aqui
__________________
Que hablen mal de uno es espantoso. Pero hay algo peor: que no hablen.
Quien hace, puede equivocarse. Quien nada hace, ya está equivocado".

Última edición por the_scorpion; 11/12/2007 a las 08:43
  #4 (permalink)  
Antiguo 11/12/2007, 08:30
Avatar de mauled  
Fecha de Ingreso: marzo-2005
Ubicación: Cd. de México.
Mensajes: 3.001
Antigüedad: 19 años, 1 mes
Puntos: 33
Re: Correo con archivo adjunto

hey the_scorpion arregla la liga porfavor tiene un http de mas


Saludillos.
  #5 (permalink)  
Antiguo 11/12/2007, 10:50
 
Fecha de Ingreso: diciembre-2007
Mensajes: 14
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Correo con archivo adjunto

Gracias a los dos parece que esta esplicado paso a pasao espero no tener problemas.


La unica pega que le veo esque creo eq el ejemplo ese esta echo para tu mandar correo a otras personas, yo lo queria para ponerlo en una web y me lo mandaran a mi...aver si lo puedo modificar para que me sirva a mi.

Aver que os parece esta solucion

$mail = new PHPMailer();
$mail->Host = "localhost";
$mail->From = "[email protected]";
$mail->FromName = "Blog Unijimpe";
$mail->Subject = $_POST['asunto'];
$mail->AddAddress($_POST['destino']);



Intercambio lo de from por lo de AddAddres, y cambio el formulario y donde pones destinatario pongo remitente. No se si me explico bien. asi puedo usar este codigo sin cambiar casi nada.

La cosa quedar asi no?


$mail = new PHPMailer();
$mail->Host = "localhost";
$mail->From = $_POST['destino'];
$mail->FromName = "Blog Unijimpe";
$mail->Subject = $_POST['asunto'];
$mail->AddAddress([email protected]);

Última edición por Hayron; 11/12/2007 a las 11:11
  #6 (permalink)  
Antiguo 11/12/2007, 11:14
 
Fecha de Ingreso: diciembre-2007
Mensajes: 14
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Correo con archivo adjunto

Joder me dado cuenta que si no aveis visto el ejemplo es compliado entender lo que quiero decir; el caso es que el ejemplo esta hecho un formulario donde en la casilla donde pone DESTINATARIO pones aquien quieres mandarle el correo.

Pues bien,yo voy a usar esa casilla para referirme al CORREO DEL QUE ENVIA el correo. Y poner en algun sitio que el correo me llegue a mi, y creo que se pone en la variable $mail->AddAddress([email protected]);

Espero que ya me haya esplicado mejor
  #7 (permalink)  
Antiguo 11/12/2007, 11:48
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
Re: Correo con archivo adjunto

Es correcto, pero recuerda que los strings en PHP estan rodeados de comillas dobles o simples, por lo que si agregas asi la linea te marcara error, tienes que agregarla con comillas:
Código PHP:
$mail->AddAddress("[email protected]"); 
Saludos.
  #8 (permalink)  
Antiguo 11/12/2007, 15:50
 
Fecha de Ingreso: diciembre-2007
Mensajes: 14
Antigüedad: 16 años, 4 meses
Puntos: 0
Re: Correo con archivo adjunto

Es verdad.

Ok pues muchas gracias a todos
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:39.