Foros del Web » Programando para Internet » PHP »

Enviar imagen adjunta en formulario

Estas en el tema de Enviar imagen adjunta en formulario en el foro de PHP en Foros del Web. Hola, Tengo un formulario para que me envien los datos y adjunten una imagen y me lleguen todos los datos a mi correo. El problema ...
  #1 (permalink)  
Antiguo 17/08/2011, 17:25
 
Fecha de Ingreso: febrero-2011
Mensajes: 23
Antigüedad: 13 años, 2 meses
Puntos: 0
Enviar imagen adjunta en formulario

Hola,
Tengo un formulario para que me envien los datos y adjunten una imagen y me lleguen todos los datos a mi correo.
El problema esque la imagen no me llega, me llega solo el nombre.
Me podrian ayudar?

Muchas gracias.

este es el codigo por si les hace falta:

<form action="enviar.php" method="post" enctype="multipart/form-data" name="form1" id="form1">
<table width="975">
<tr>
<td bgcolor="#FFFFFF"><div align="center"><span class="Estilo12 Estilo39">Inserta tus datos</span></div></td>
</tr>
</table>
</p>
<p align="justify" class="Estilo43">Nombre
<input type="text" name="textfield3" id="textfield4" />
</p>
<p align="justify" class="Estilo43">Apellidos
<input type="text" name="textfield" id="textfield5" />
</p>
<p align="justify" class="Estilo43">E-mail
<input type="text" name="textfield9" id="textfield6" />
</p>
<p align="justify" class="Estilo43">Usuario
<input type="text" name="usuario" id="usuario" />
</p>
<p align="justify" class="Estilo43">Contraseña
<input type="password" name="password" id="password" />
<p align="justify" class="Estilo43">Insertar imagen principal:
<input type="file" name="archivo" id="archivo" />
<p>&nbsp; </p>
<p align="center" class="Estilo7">
<input name="enviar" type="submit" id="enviar" value="Enviar" onclick="location.href=this.form.nombre.value+'/'+this.form.clave.value+'.htm'" />
<input type="reset" name="button2" id="button2" value="Borrar" />
</p>
</form>
  #2 (permalink)  
Antiguo 17/08/2011, 17:28
 
Fecha de Ingreso: agosto-2010
Ubicación: Tenerife
Mensajes: 893
Antigüedad: 13 años, 8 meses
Puntos: 202
Respuesta: Enviar imagen adjunta en formulario

¿la parte en php?
el html no nos dice nada de como lo envías.
__________________
Pensaba que internet era una gran biblioteca de sabiduría, hasta que comprendí que un libro no puede tener mil páginas llenas de faltas de ortografía... :(
  #3 (permalink)  
Antiguo 17/08/2011, 17:29
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
Respuesta: Enviar imagen adjunta en formulario

Podrias postear el código que usar para recibir y tratar de guardar tu archivo.

Slds!
  #4 (permalink)  
Antiguo 18/08/2011, 06:30
 
Fecha de Ingreso: febrero-2011
Mensajes: 23
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Enviar imagen adjunta en formulario

Sorry, aqui teneis la parte php...

<?php

$mail='[email protected]' ;

$nombre = $_POST ["textfield3"] ;
$apellidos = $_POST ["textfield"] ;
$email = $_POST ["textfield9"] ;
$usuario = $_POST ["usuario"] ;
$contraseña = $_POST ["password"] ;
$imagen = $_FILES ["archivo"] ['name'] ;
$destino = "[email protected]".$imagen ;
$acepta_condiciones_de_uso = $_POST ["checkbox"] ;

$thank="gracias por tu formulario.php" ;

$message = "
nombre: " .$nombre."
apellidos: " .$apellidos."
email: " .$email."
usuario: " .$usuario."
contraseña: " .$contraseña."
imagen: " .$imagen."
acepta condiciones de uso: " .$acepta_condiciones_de_uso;

if (mail ($mail, "nuevo formulario", $message) )
Header ("Location: $thank") ;

?>
  #5 (permalink)  
Antiguo 18/08/2011, 06:38
Avatar de NUCKLEAR
Moderador radioactivo
 
Fecha de Ingreso: octubre-2005
Ubicación: Cordoba-Argentina
Mensajes: 5.688
Antigüedad: 18 años, 5 meses
Puntos: 890
Respuesta: Enviar imagen adjunta en formulario

Te llega solo el nombre por que se lo estas diciendo.
$imagen = $_FILES ["archivo"] ['name'] ;

Hay decenas de ejemplo de como enviar adjuntos, buscar un poco no supone un gran esfuerzo, o si?
__________________
Drupal Argentina
  #6 (permalink)  
Antiguo 18/08/2011, 09:27
 
Fecha de Ingreso: febrero-2011
Mensajes: 23
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Enviar imagen adjunta en formulario

Abro un tema, porque llevo tiempo buscandolo y lo que encuentro no me funciona o no me vale...
Por eso pido ayuda.
Lo que me pregunto es... ya que te has tomado la molestia de contestar, y sabiendo como se soluciona... te es mucho trabajo ayudarme a solucionarlo?
Un saludo
  #7 (permalink)  
Antiguo 18/08/2011, 09:45
Avatar de vgonga1986  
Fecha de Ingreso: marzo-2008
Ubicación: País de Pandereta
Mensajes: 1.021
Antigüedad: 16 años, 1 mes
Puntos: 253
Respuesta: Enviar imagen adjunta en formulario

Has probado a mirar en google, con eso te valdrá.

Un saludo.
__________________
¿Alguna pregunta, duda, acotación, nota, cuestión, reparo, comentario, demanda, crítica, interpretación, objeción, interrogante, discrepancia, observación, réplica, disquisición, apostilla o exégesis?
  #8 (permalink)  
Antiguo 18/08/2011, 09:58
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Enviar imagen adjunta en formulario

Con esto imagen: " .$imagen." no estas enviando la imagen amigo mio. Tenemos que partir de lo siguiente:

1. como quieres que te llegue la imagen ? como archivo adjunto? o simplemente que se muestre en el cuerpo del mensaje ?

Viendo tu código DEDUZCO que quieres que imprima la imagen en el cuerpo, si es así deberás empezar a leer acerca de las cabeceras en la función mail de PHP...
Por que ? pues porque no puede mandar codigo HTML a un mail si no le explicas que lo que esta leyendo es HTML

Otra cosa a tener en cuenta para que se muestre la imagen en el cuerpo del mensaje es que deberás colocar la ruta absoluta de la imagen para que esta se pueda ver en el cuerpo así:

MAL:
Código HTML:
Ver original
  1. <img source="/unaCarpeta/unaImagen.jpg" />
BIEN:
Código HTML:
Ver original
  1. <img source="http://tuDominio.com/unaCarpeta/unaImagen.jpg" />

Por que? pues porque el lector de correos debe saber de donde sacara la imagen, sino que te va a mostrar ?

Otro punto y es el que te dice NUCKLEAR y es que no basta con que guardes el nombre de la imagen, también necesitaras el TIPO DE IMAGEN que vas a mostrar, intenta hacerle un echo a la variable $imagen y veraz que esta no tiene sino el nombre del archivo mas NO la extensión de esta, así que no se sabe si es GIF JPG PNG TIFF y todas esas cosas, para saber la extensión debes utilizar $_FILES['archivo']['type']

Espero que esta información te sea de ayuda.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #9 (permalink)  
Antiguo 18/08/2011, 12:31
 
Fecha de Ingreso: febrero-2011
Mensajes: 23
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Enviar imagen adjunta en formulario

Hola jotaincubus!
Gracias por tus consejos,
Lo que necesito es que el formulario que me llegue al correo enviado desde la web, la imagen me llegue adjunta...
Entonces que deberia hacer?

Un saludo y gracias a todos!
  #10 (permalink)  
Antiguo 18/08/2011, 12:38
Avatar de jotaincubus  
Fecha de Ingreso: mayo-2005
Ubicación: Medellin - Colombia
Mensajes: 1.797
Antigüedad: 18 años, 11 meses
Puntos: 394
Respuesta: Enviar imagen adjunta en formulario

Enviar un archivo adjunto por PHP es bastante engorroso amigo, en tal caso te recomiendo enormemente que utilices PHPMailer que es un código que te ayudara a enviar mails de forma sencilla con adjuntos sin que te compliques a vida.

Es de anotar que necesitaras un poco de conocimiento en POO (Programacion Orientada a Objetos) ya que este código se maneja a travez de una clase.

O tambien puedes tratar de leer ESTE tema que explican paso por paso como enviar un archivo adjunto con la función mail de PHP.

Espero que te sirva de ayuda.
__________________
Por que existe gente que no agradece después de que se le ha brindado tiempo y ayuda ???
  #11 (permalink)  
Antiguo 18/08/2011, 13:07
 
Fecha de Ingreso: febrero-2011
Mensajes: 23
Antigüedad: 13 años, 2 meses
Puntos: 0
Respuesta: Enviar imagen adjunta en formulario

Si me dices que es mas facil que la imagen venga impresa en el email en vez de adjunta, como me recomiendas hacer el codigo?
Gracias!

Etiquetas: formulario, usuarios
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 21:21.