Archivos por email

Hola, ¿cómo puedo enviar un archivo por email utilizando la función mail()?
Muchas gracias por tu tiempo

1 respuesta

Respuesta
1
Te mando una copia de una respuesta que di en una pregunta similar:
Este script sube archivos al servidor:
<?
$carpeta="temp/";
if($subir) {
if(!$nfile) echo "Archivo demasiado grande (máximo ".$MAX_FILE_SIZE."Kb)o desconocido";
else {
if(!@copy($nfile,$carpeta.$nfile_name)) echo "Error al intentar subir el archivo"; //La carpeta no existe o bien no tiene derechos de escritura
else echo "Archivo <b>".$nfile_name."</b> (".($nfile_size/1000)." bytes) copiado en <b>".$carpeta."</b>";
}
}
else {
echo "<form action=".$PHP_SELF." ENCTYPE='multipart/form-data' method='post'>";
echo "<input type=file name='nfile'>";
echo "<input type=hidden name='MAX_FILE_SIZE' value=2000>";
echo "<input type=submit value='Subir archivo' name='subir'>";
}
?>
El campo MAX_FILE_SIZE limita el tamaño del archivo al que tu quieras. Lo que puedes hacer es incluir un link en el mensaje para descargar los archivos, y borrarlos después (usando un contador de descargas para saber si los han bajado ya o no).
Si prefieres enviar el archivo en lugar de un link, ahí tienes un par de artículos (en inglés y algo densos ;p) sobre el uso de MIME en PHP para enviar archivos adjuntos:
http://www.phpbuilder.com/columns/kartic20000807.php3
http://www.zend.com/codex.php?id=103&single=1
He supuesto que los archivos que quieres adjuntar no son de texto, en caso contrario no tendrías ese problema ya que podrías guardar su contenido en una variable con fread().

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas