Hola,
A través de un formulario recibo unas imágenes que grabo en una carpeta y posteriormente las envio adjuntas a un e-mail.
Si envio una sola imagen funciona bien, pero si envio 2 , se queda colgado y al final da un error.
Las imágenes quedan grabadas en la carpeta, el error está en el e-mail.
Alguien sabe el motivo?
$destino = "
[email protected]";
$asunto = "Probando envio attachmentes";
$mensaje = "A ver si todo sale bien. Gracias.";
$headers = "From:
[email protected]\n";
$headers .= "Reply-To:
[email protected]\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/mixed; boundary=\"MIME_BOUNDRY\"\n";
$headers .= "This is a multi-part message in MIME format.\n";
for ($i = 1; $i <= 50; $i++) {
$nombre_archivo = $_FILES['userfile']['name'][$i];
$tipo_archivo = $_FILES['userfile']['type'][$i];
$tamano_archivo = $_FILES['userfile']['size'][$i];
$data = getdate();
$nombreimagen = "nombre" . $data["hours"] . "_" . $data["minutes"] . "_" . $data["seconds"] . $i .".jpg" ;
if (move_uploaded_file($_FILES['userfile']['tmp_name'][$i], "imagenes/" . $nombreimagen)){
chmod("imagenes/" . $nombreimagen,0777);
$imagen = "imagenes/" . $nombreimagen;
$fp = fopen($imagen,"r");
$str = fread($fp, filesize($imagen));
$str = chunk_split(base64_encode($str));
$fp = fclose($fp);
$message .= "--MIME_BOUNDRY\n";
$message .= "Content-Type: application/octet-stream; name=\"$nombreimagen.jpeg\"\n";
$message .= "Content-disposition: attachment\n";
$message .= "Content-Transfer-Encoding: base64\n";
$message .= "\n";
$message .= "$str\n";
$message .= "\n";
$message .= "--MIME_BOUNDRY--\n";
}
}
mail($destino, $asunto, $message, $headers);