Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/04/2013, 22:47
fanatimillo
Usuario no validado
 
Fecha de Ingreso: octubre-2003
Mensajes: 7
Antigüedad: 20 años, 6 meses
Puntos: 0
problema con mail php con adjunto y base de datos

Hola gente, necesitaria si alguno me puede dar una mano con lo siguiente.
tengo el siguiente codigo el cual anda perfecto, hace un envio de mail con un archivo adjunto y a su vez graba en la base de datos los datos.......... el problema es que necesito que tambien guarde la imagen..... en este momento solo me guarda el nombre de la imagen....... pero necesito que haga la subida al servidor.
alguno me podría dar una mano? MIL GRACIAS

Código:
<? 
require_once("include/includes.php");
require_once("include/sesion.php");

$nombre_archivo = $_FILES['archivo']['name'];
$tipo_archivo = $_FILES['archivo']['type'];
$tamano_archivo = $_FILES['archivo']['size'];

$MESSAGE_BODY = "<div style='font:normal 12px arial; color:#666; width:100%' >";
$MESSAGE_BODY .= "<p>Ha recibido un CV desde su web</p>";
$MESSAGE_BODY .= "<p><b>Nombre</b><br> ".$_POST["nombre"]."</p>";
$MESSAGE_BODY .= "<p><b>Apellido</b><br> ".$_POST["apellido"]."</p>";
$MESSAGE_BODY .= "<p><b>Telefono</b><br> ".$_POST["telefono"]."</p>";
$MESSAGE_BODY .= "<p><b>E-mail</b><br> ".$_POST["email"]."</p>";
$MESSAGE_BODY .= "</div>"; 
       
$email        = "[email protected]"; 
       
$asunto     = "asunto del mensaje";                
$mensaje    = utf8_decode($MESSAGE_BODY);
$nombref    = $_FILES["archivo"]["name"];       
       
$cabeceras     = "From: [email protected]\r\n";
$cabeceras .= "Reply-To: ".$_POST["mail"]."\n";
$cabeceras .= "MIME-version: 1.0\n";
$cabeceras .= "Content-type: multipart/mixed; ";
$cabeceras .= "boundary=\"Message-Boundary\"\n";
$cabeceras .= "Content-transfer-encoding: 7BIT\n";
$cabeceras .= "X-attachments: $nombref";
       
$body_top  = "--Message-Boundary\n";
$body_top .= "Content-type: text/html; charset=US-ASCII\n";
$body_top .= "Content-transfer-encoding: 7BIT\n";
$body_top .= "Content-description: Mail message body\n\n";


$nombre = $HttpVars->TraerPost('nombre');
$apellido = $HttpVars->TraerPost('apellido');
$email = $HttpVars->TraerPost('email');
$telefono = $HttpVars->TraerPost('telefono');
$sql = "INSERT INTO tbl_rrhh (nombre, apellido, email, telefono, archivo ) " .
"values ('".$nombre."','".$apellido."','".$email."','".$telefono."','".$nombref."')";
$result = $db->Query($sql,$connection);
       
$cuerpo = $body_top.$mensaje;
       
if($tamano_archivo>0)
{
   //Leo el fichero
   $oFichero = fopen($_FILES["archivo"]["tmp_name"], 'r'); 
   $sContenido = fread($oFichero, filesize($_FILES["archivo"]["tmp_name"]));
   $sAdjuntos .= chunk_split(base64_encode($sContenido));
   fclose($oFichero);
   //Adjunto el fichero
   $cuerpo .= "\n\n--Message-Boundary\n";
   $cuerpo .= "Content-type: Binary; name=\"$nombref\"\n";
   $cuerpo .= "Content-Transfer-Encoding: BASE64\n";
   $cuerpo .= "Content-disposition: attachment; filename=\"$nombref\"\n\n";
   $cuerpo .= "$sAdjuntos\n";
   $cuerpo .= "--Message-Boundary--\n";
}
//Envío el correo
mail($email, $asunto, $cuerpo, $cabeceras); 
header( 'Location: trabaja.php?ok=1' );
?>