Cita:
Iniciado por omedes 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<form action="algo.php" method="post" enctype="multipart/form-data" > ....
....
....
<input type="file" name="imagen" value="" />
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<?php
$imagen=$_POST['imagen'];
@chmod($_SERVER['DOCUMENT_ROOT'].'/imagenes/, 0777);
$uploaddir = $_SERVER['DOCUMENT_ROOT'].'/imagenes/';
$uploadfile = $uploaddir . basename($_FILES['imagen']['name']);
$uploadfiles = basename($_FILES['imagen']['name']);
if (move_uploaded_file($_FILES['imagen']['tmp_name'], $uploadfile))
{
$url='http://www.sitioweb.com/imagenes/'.$uploadfiles;
....
...
...
...
}
?>