
Gracias x su ayuda...
Formulario
Código :
<form name='formulario' id='formulario' method='post' action='mail.php' target='_self' enctype="multipart/form-data"> <p>Nombre <input type='text' name='Nombre' id='Nombre'></p> <p>Apellidos <input type='text' name='Apellidos' id='Apellidos'></p> <p> E-mail <input type='text' name='E-mail' id='E-mail'></p> <p>Adjuntar archivo: <input type='file' name='archivo1' id='archivo1'></p> <p> <input type='submit' value='Enviar formulario'> </p> </form>
php
Código :
<?php function form_mail($sPara, $sAsunto, $sTexto, $sDe) { $bHayFicheros = 0; $sCabeceraTexto = ""; $sAdjuntos = ""; if ($sDe)$sCabeceras = "From:".$sDe."\n"; else $sCabeceras = ""; $sCabeceras .= "MIME-version: 1.0\n"; foreach ($_POST as $sNombre => $sValor) $sTexto = $sTexto."\n".$sNombre." = ".$sValor; foreach ($_FILES as $vAdjunto) { if ($bHayFicheros == 0) { $bHayFicheros = 1; $sCabeceras .= "Content-type: multipart/mixed;"; $sCabeceras .= "boundary=\"--_Separador-de-mensajes_--\"\n"; $sCabeceraTexto = "----_Separador-de-mensajes_--\n"; $sCabeceraTexto .= "Content-type: text/plain;charset=iso-8859-1\n"; $sCabeceraTexto .= "Content-transfer-encoding: 7BIT\n"; $sTexto = $sCabeceraTexto.$sTexto; } if ($vAdjunto["size"] > 0) { $sAdjuntos .= "\n\n----_Separador-de-mensajes_--\n"; $sAdjuntos .= "Content-type: ".$vAdjunto["type"].";name=\"".$vAdjunto["name"]."\"\n";; $sAdjuntos .= "Content-Transfer-Encoding: BASE64\n"; $sAdjuntos .= "Content-disposition: attachment;filename=\"".$vAdjunto["name"]."\"\n\n"; $oFichero = fopen($vAdjunto["tmp_name"], 'r'); $sContenido = fread($oFichero, filesize($vAdjunto["tmp_name"])); $sAdjuntos .= chunk_split(base64_encode($sContenido)); fclose($oFichero); } } if ($bHayFicheros) $sTexto .= $sAdjuntos."\n\n----_Separador-de-mensajes_----\n"; return(mail($sPara, $sAsunto, $sTexto, $sCabeceras)); } if (form_mail("@gmail.com","Asunto del mensaje", "Los datos introducidos en el formulario son:\n\n", "
@hotmail.com")) echo "Su formulario ha sido enviado con exito"; ?>