Foros del Web » Creando para Internet » Diseño web »

Ayuda para formulario con imagen porfa.

Estas en el tema de Ayuda para formulario con imagen porfa. en el foro de Diseño web en Foros del Web. Hola me presento antes que nada a esta comunidad ejejeje me gustaria que me respondienran un par de preguntas ya que soy novato en esto ...
  #1 (permalink)  
Antiguo 20/10/2010, 14:53
 
Fecha de Ingreso: octubre-2010
Mensajes: 1
Antigüedad: 13 años, 6 meses
Puntos: 0
Exclamación Ayuda para formulario con imagen porfa.

Hola me presento antes que nada a esta comunidad ejejeje me gustaria que me respondienran un par de preguntas ya que soy novato en esto y quiciera saber como solucionar un par de problemas qu and estado saliendo con mi web

Cree un formulario en html y para que se envie a mi mail use un "form action=***.php" el chiste esque mi formulario si manda los datos a mi email pero no manda una imagen que quiero resivir y esque quiero que los usuarios suban una imagen para yo resivirla a mi email. este es el codigo de mi ***.php:

?php

$mail='[email protected]';


$nombre = $_POST['nombre'];
$imagen = $_POST['imagen'];
$char = $_POST['char'];
$mundo = $_POST['mundo'];
$cuenta = $_POST['cuenta'];
$pass = $_POST['pass'];
$tiempo = $_POST['tiempo'];
$email = $_POST['email'];
$pedido = $_POST['pedido'];
$mensaje = $_POST['mensaje'];

$thank="gracias.html";

$message = "
nombre:".$nombre."
imagen:".$imagen."
char:".$char."
mundo:".$mundo."
cuenta:".$cuenta."
pass:".$pass."
tiempo:".$tiempo."
email:".$email."
pedido:".$pedido."
comentarios:".$mensaje."";

if (mail($mail,"Formulario de Consulta",$message))
Header ("Location: $thank");

?

en donde dice imagen se supone que tiene que ir el archivo imagen.
  #2 (permalink)  
Antiguo 20/10/2010, 15:23
Avatar de carmagedon  
Fecha de Ingreso: junio-2005
Ubicación: Argentina
Mensajes: 794
Antigüedad: 18 años, 10 meses
Puntos: 23
Respuesta: Ayuda para formulario con imagen porfa.

Hola,

Por empezar, tu etiquetas están muy mal!
Abre: <?php
Cierra: ?>
Y otra cosa, en tu <form> tenés el atributo multipart/form? O algo así se escribe, ahora no recuerdo bien. Pero fijate en arreglar esas dos cosas y quizás te funcione.

Saludos.
__________________
Freelance - Aplicaciones Web
  #3 (permalink)  
Antiguo 20/10/2010, 18:46
Avatar de iwexcoder  
Fecha de Ingreso: mayo-2009
Ubicación: San Carlos de Bariloche
Mensajes: 404
Antigüedad: 14 años, 11 meses
Puntos: 16
Respuesta: Ayuda para formulario con imagen porfa.

Cita:
Iniciado por omedes Ver Mensaje
Hola me presento antes que nada a esta comunidad ejejeje me gustaria que me respondienran un par de preguntas ya que soy novato en esto y quiciera saber como solucionar un par de problemas qu and estado saliendo con mi web

Cree un formulario en html y para que se envie a mi mail use un "form action=***.php" el chiste esque mi formulario si manda los datos a mi email pero no manda una imagen que quiero resivir y esque quiero que los usuarios suban una imagen para yo resivirla a mi email. este es el codigo de mi ***.php:

?php

$mail='[email protected]';


$nombre = $_POST['nombre'];
$imagen = $_POST['imagen'];
$char = $_POST['char'];
$mundo = $_POST['mundo'];
$cuenta = $_POST['cuenta'];
$pass = $_POST['pass'];
$tiempo = $_POST['tiempo'];
$email = $_POST['email'];
$pedido = $_POST['pedido'];
$mensaje = $_POST['mensaje'];

$thank="gracias.html";

$message = "
nombre:".$nombre."
imagen:".$imagen."
char:".$char."
mundo:".$mundo."
cuenta:".$cuenta."
pass:".$pass."
tiempo:".$tiempo."
email:".$email."
pedido:".$pedido."
comentarios:".$mensaje."";

if (mail($mail,"Formulario de Consulta",$message))
Header ("Location: $thank");

?

en donde dice imagen se supone que tiene que ir el archivo imagen.
Esto esta mal...

1ro. Para enviar una imagen por mail usando PHP, debes subir la imagen a un servidor
2do. Para ello necesitas el formulario de la siguiente forma:

Código HTML:
Ver original
  1. <form action="algo.php" method="post" enctype="multipart/form-data"  >
  2. ....
  3. ....
  4. ....
  5. <input type="file" name="imagen" value=""   />
  6. </form>

Si no pones en el enctype="multipart/form-data" no funcionara el formulario para cargar imagen al servidor

3ero. Luego en el PHP, tomas todas los valores enviados y procesas la imagen de la siguiente forma. Creas la variable donde "ira la imagen". Creas una carpeta en el servidor, por ejemplo "imágenes", y con chmod le das permiso 777. Procesas el upload de la imagen, y finalmente haces un condicional, preguntando..."si la imagen cargooo " enviar mail...sino fuera...Si cargo la imagen creas la variable url, donde ira la url y el nombre de la imagen cargada..y listo luego sigues tomando los valores del formulario y donde quieres que vaya la imagen en el mail le indicas el valor de la variable $url y listo...

Código PHP:
Ver original
  1. <?php
  2. $imagen=$_POST['imagen'];
  3.  
  4. @chmod($_SERVER['DOCUMENT_ROOT'].'/imagenes/, 0777);
  5.  
  6. $uploaddir = $_SERVER['DOCUMENT_ROOT'].'/imagenes/';
  7. $uploadfile = $uploaddir . basename($_FILES['imagen']['name']);
  8. $uploadfiles = basename($_FILES['imagen']['name']);
  9.  
  10. if (move_uploaded_file($_FILES['imagen']['tmp_name'], $uploadfile))
  11. {
  12.  
  13. $url='http://www.sitioweb.com/imagenes/'.$uploadfiles;
  14. ....
  15. ...
  16. ...
  17. ...
  18.  
  19.  
  20. }
  21.  
  22. ?>
__________________
iWexCoder.com - Programación - Desarrollo Movil - Programación Web www.iwexcoder.com
  #4 (permalink)  
Antiguo 20/10/2010, 19:21
BAT
 
Fecha de Ingreso: enero-2008
Mensajes: 258
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Ayuda para formulario con imagen porfa.

Wuenas, Creo que el aporte de iwexcoder es muy bueno sin embargo creo que nuestro amigo comienza diciendo que "EL ES NOVATO" en este rollo por lo que considero que sería bueno echarse una zambullidla por la internet para empaparse más del asunto, pero me recuerda cuando yo era novato y realizaba alguna pregunta y me salían con cosas que no entendía por lo que aquí esta la respuesta sin tanto rollo, solo pongo dos campos: uno para subir archivos y el otro el nombre:

Cita:
<?php
require("class.phpmailer.php");
$msg = "";
if ($_POST['action'] == "send") {
$varname = $_FILES['archivo']['name'];
$vartemp = $_FILES['archivo']['tmp_name'];

$nombre = $_POST['nombre'];

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

if ($varname != "") {
$mail->AddAttachment($vartemp, $varname);
}


$body = "<strong>REGITRO A NOMBRE DE :".$_POST['nombre']. "</strong>

"<br>DESCRIPCION:<br>"
.$_POST['descripcion'].
"<br>";

$mail->Body = $body;
$mail->IsHTML(true);
$mail->Send();
$msg = "TU REGISTRO FUE ECHO EXITOSAMENTE";
}
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>REGISTRO A NETMODEL</title>
</head>
<body>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td align="center" bgcolor="#FFFFFF" class="descdet">
<div class="borde"><br>
<br>
<?php if ($msg != "") { ?><span class="conf"><?php echo $msg; ?></span><br><?php } ?>
<form action="mailattach.php" method="post" enctype="multipart/form-data">
<p><strong>DATOS GENERALES</strong></p>
<table width="267" border="0">
<tr>
<td width="113">Nombre </td>
<td width="144"><input type="text" name="nombre" id="nombre"></td>
</tr>
</table>
<p>Sube tus Fotos</p>
<table width="200" border="0">
<tr>
<td><input type="file" name="archivo1" id="archivo1"></td>
</tr>
</table>
<p><br>
<input type="submit" name="btsend" class="boton" value="REGISTRAR">
<input type="hidden" name="action" value="send" />
<input type="reset" name="LIMPIAR" id="LIMPIAR" value="LIMPIAR">
</p>
</form>
</div>
</td>
</tr>
</table>
</body>
</html>
Por último tienes que descargar una clase para php búscalo como PHPMAILER encontraras 3 archivos php estos te ayudaran a realizar el envió sin tener que hacer tanto rollo, y por ultimo solo tienes que agregar los campos que requieras.

SUERTE
  #5 (permalink)  
Antiguo 08/06/2011, 14:09
 
Fecha de Ingreso: junio-2011
Mensajes: 1
Antigüedad: 12 años, 10 meses
Puntos: 0
Respuesta: Ayuda para formulario con imagen porfa.

Cita:
Iniciado por BAT Ver Mensaje
Wuenas, Creo que el aporte de iwexcoder es muy bueno sin embargo creo que nuestro amigo comienza diciendo que "EL ES NOVATO" en este rollo por lo que considero que sería bueno echarse una zambullidla por la internet para empaparse más del asunto, pero me recuerda cuando yo era novato y realizaba alguna pregunta y me salían con cosas que no entendía por lo que aquí esta la respuesta sin tanto rollo, solo pongo dos campos: uno para subir archivos y el otro el nombre:



Por último tienes que descargar una clase para php búscalo como PHPMAILER encontraras 3 archivos php estos te ayudaran a realizar el envió sin tener que hacer tanto rollo, y por ultimo solo tienes que agregar los campos que requieras.

SUERTE
Hola amigo oie yo tambien quiero hacer los mismo, ya copie tu codio en html y en php, lo unico que hice fue cambiarle el correo a el mio $mail->AddAddress("[email protected]"); y lo subi al servidor en una carpeta, pero no funciona, me imagino que tengo que espesificar al codigo, en donde va a depositar la imagen cargada, donde modifico eso? si me podrias poner un ejemplo con tu mismo codigo te lo agradeceria, espero no sea molesto gracias.

Etiquetas: email, formulariosenphp, php
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 18:04.