Estoy usando html, mysql, php y fpdf para almacenar y enviar datos en forma de archivo pdf a un correo especifico, he probado varios método y no lo he conseguito, pueden orientarme al respecto.
Mi codigo lo agrego a continuación. almacena correctamente en la base de mysql, crea el archivo historia_clinica.pdf, pero no lo adjunta al mail para enviarlo. Es un archivo llamado mail.php. Gracias de antemano.
<?php
date_default_timezone_set('America/Mexico_City');
include("con_db_nutriant.php");
if (isset($_POST['enviar'])) {
$nombre = trim($_POST['nombre']);
$apellidos = trim($_POST['apellidos']);
$fcita = trim($_POST['fcita']);
$hcita = trim($_POST['hcita']).':00';
$genero = trim($_POST['genero']);
$edad = trim($_POST['edad']);
$fnacimiento = trim($_POST['fnacimiento']);
$edocivil = trim($_POST['edocivil']);
if (isset($_POST["hijos"])) {
$nohijos = $_POST["hijos"];
}
$ocupacion = trim($_POST['ocupacion']);
$horariotrab = trim($_POST['htrabajo']);
$telefono = trim($_POST['telefono']);
$tratapeso = trim($_POST['tratamientos']);
$enfermedad = trim($_POST['enfermedades']);
$parterial = trim($_POST['presion']);
$cirugias = trim($_POST['cirugias']);
$digestion = trim($_POST['digestion']);
$ptiroides = trim($_POST['tiroides']);
$mediact = trim($_POST['medicamento']);
$quemediact = trim($_POST['cualmedic']);
$mediactmotivo = trim($_POST['motivomedic']);
$actfisica = trim($_POST['afisica']);
$queactfis = trim($_POST['qafisica']);
$frecactfis = trim($_POST['afisicafrec']);
$pesomintresa = trim($_POST['pesomin']);
$alcohol = trim($_POST['alcohol']);
$alcoholfrec = trim($_POST['frecalcohol']);
$fuma = trim($_POST['fuma']);
$fumafrec = trim($_POST['frecfuma']);
$fumanocigarros = trim($_POST['cigarros']);
$mestruaregu = trim($_POST['mestruacion']);
$mestruanoregumot = trim($_POST['motmestruacion']);
$anticonceptivo = trim($_POST['hormonales']);
$queanticonceptivo = trim($_POST['chormonal']);
if (isset($_POST["enfermedadf"])) {
$casillasSeleccionadas = $_POST["enfermedadf"];
// Definir un array asociativo para almacenar los valores seleccionados
$enfermedadesSeleccionadas = array(
'HIPERTENSIÓN' => false,
'DIABETES' => false,
'HIPO O HIPERTIROIDISMO' => false,
'SOBREPESO' => false,
'CÁNCER' => false,
'OTRA(S)' => false,
'NINGUNA' => false
);
// Marcar como seleccionadas las enfermedades que están en el array
foreach ($casillasSeleccionadas as $enfermedadfam) {
if (array_key_exists($enfermedadfam, $enfermedadesSeleccionadas)) {
$enfermedadesSeleccionadas[$enfermedadfam] = true;
}
}
// Ahora puedes acceder a las variables individuales
$hipertension = $enfermedadesSeleccionadas['HIPERTENSIÓN'];
$diabetes = $enfermedadesSeleccionadas['DIABETES'];
$hiptiroidismo = $enfermedadesSeleccionadas['HIPO O HIPERTIROIDISMO'];
$sobrepeso = $enfermedadesSeleccionadas['SOBREPESO'];
$cancer = $enfermedadesSeleccionadas['CÁNCER'];
$oenfermedad = $enfermedadesSeleccionadas['OTRA(S)'];
$nenfermedad = $enfermedadesSeleccionadas['NINGUNA'];
}
$qotraenfermedad = trim($_POST['otraenfermedadfam']);
$padece = trim($_POST['padece']);
$refresco = trim($_POST['refresco']);
$refrescofrec = trim($_POST['frefresco']);
$refrescocantidad = trim($_POST['crefresco']);
$agua = trim($_POST['agua']);
$fruta = trim($_POST['fruta']);
$alergico = trim($_POST['alergico']);
$comida = trim($_POST['come']);
$fregistro = date ('Y-m-d');
$hregistro = date('H:i:s', time());
$consulta = "INSERT INTO tbl_historialcli(nombre, apellidos, fcita, hcita, genero, edad, fnacimiento, edocivil, nohijos, horariotrab, telefono, tratapeso, enfermedad, parterial, cirugias, digestion, ptiroides, mediact, quemediact, mediactmotivo, actfisica, queactfis, frecactfis, pesomintresa, alcohol, alcoholfrec, fuma, fumafrec, fumanocigarros, mestruaregu, mestruanoregumot, anticonceptivo, queanticonceptivo, hipertension, diabetes, hiptiroidismo, sobrepeso, cancer, oenfermedad, nenfermedad, qotraenfermedad, padece, refresco, refrescofrec, refrescocantidad, agua, fruta, alergico, comida, fregistro, hregistro) VALUES ('$nombre', '$apellidos', '$fcita', '$hcita', '$genero', '$edad', '$fnacimiento', '$edocivil', '$nohijos', '$horariotrab', '$telefono', '$tratapeso', '$enfermedad', '$parterial', '$cirugias', '$digestion', '$ptiroides', '$mediact', '$quemediact', '$mediactmotivo', '$actfisica', '$queactfis', '$frecactfis', '$pesomintresa', '$alcohol', '$alcoholfrec', '$fuma', '$fumafrec', '$fumanocigarros', '$mestruaregu', '$mestruanoregumot', '$anticonceptivo', '$queanticonceptivo', '$hipertension', '$diabetes', '$hiptiroidismo', '$sobrepeso', '$cancer', '$oenfermedad', '$nenfermedad', '$qotraenfermedad', '$padece', '$refresco', '$refrescofrec', '$refrescocantidad', '$agua', '$fruta', '$alergico', '$comida', '$fregistro', '$hregistro')";
/*echo "Este es el insert: $consulta";*/
$resultado = mysqli_query($conn,$consulta);
/*echo "Este es el resultado: $resultado"; */
// Crear archivo PDF
require('fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Image('images/logo.PNG' , 140 ,10, 35, 18, 'PNG');
//$pdf->SetY(30);
$pdf->SetFont('Arial','B',16);
$pdf->Cell(60,10,utf8_decode('Historial Clínico'));
$pdf->ln();
$pdf->SetFont('Arial','B',12);
$pdf->Cell(60,10,utf8_decode('Registro'));
$pdf->ln();
$pdf->SetFont('Arial','B',9);
$pdf->Cell(80,6,'Nombre:');
$pdf->Cell(100,6,'' . $nombre, 1);
$pdf->ln();
$pdf->Cell(80,6,'Apellidos:');
$pdf->Cell(100,6,'' . $apellidos, 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Género:'));
$pdf->Cell(100,6,'' . $genero, 1);
$pdf->ln();
$pdf->Cell(80,6,'Edad:');
$pdf->Cell(100,6,'' . $edad, 1);
$pdf->ln();
$pdf->Cell(80,6,'Fecha de nacimiento:');
$pdf->Cell(100,6,utf8_decode('' . $fnacimiento), 1);
$pdf->ln();
$pdf->Cell(80,6,'Estado civil:');
$pdf->Cell(100,6,utf8_decode('' . $edocivil), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Número de hjos:'));
$pdf->Cell(100,6,utf8_decode('' . $nohijos), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Horario de trabajo:'));
$pdf->Cell(100,6,utf8_decode('' . $horariotrab), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Teléfono/WhatsApp:'));
$pdf->Cell(100,6,utf8_decode('' . $telefono), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Tratamientos de reducción peso:'));
$pdf->Cell(100,6,utf8_decode('' . $tratapeso), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Enfermedades destacadas:'));
$pdf->Cell(100,6,utf8_decode('' . $enfermedad), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Su presión arterial es:'));
$pdf->Cell(100,6,utf8_decode('' . $parterial), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Cirugías que le hayan realizado:'));
$pdf->Cell(100,6,utf8_decode('' . $cirugias), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Su digestión es:'));
$pdf->Cell(100,6,utf8_decode('' . $digestion), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Problemas de la tiroides:'));
$pdf->Cell(100,6,utf8_decode('' . $ptiroides), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Toma medicamento, vitaminas, suplemento:'));
$pdf->Cell(100,6,utf8_decode('' . $mediact), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cúal(es)?'));
$pdf->Cell(100,6,utf8_decode('' . $quemediact), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Realiza alguna actividad física?'));
$pdf->Cell(100,6,utf8_decode('' . $actfisica), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Qué actividad física realiza?'));
$pdf->Cell(100,6,utf8_decode('' . $queactfis), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Con qué frecuencia?'));
$pdf->Cell(100,6,utf8_decode('' . $frecactfis), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Peso con el que se ha mantenido?'));
$pdf->Cell(100,6,utf8_decode('' . $pesomintresa), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Ingiere alcohol?'));
$pdf->Cell(100,6,utf8_decode('' . $alcohol), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Con qué frecuencia?'));
$pdf->Cell(100,6,utf8_decode('' . $alcoholfrec), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Fuma?'));
$pdf->Cell(100,6,utf8_decode('' . $fuma), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Con qué frecuencia?'));
$pdf->Cell(100,6,utf8_decode('' . $fumafrec), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cuantos cigarros al día?'));
$pdf->Cell(100,6,utf8_decode('' . $fumanocigarros), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Sus menstruaciones son regulares?'));
$pdf->Cell(100,6,utf8_decode('' . $mestruaregu), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cuál es el motivo?'));
$pdf->Cell(100,6,utf8_decode('' . $mestruanoregumot), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Toma anticonceptivos u hormonales?'));
$pdf->Cell(100,6,utf8_decode('' . $anticonceptivo), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cuál anticonceptivo u hormonal toma?'));
$pdf->Cell(100,6,utf8_decode('' . $queanticonceptivo), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('HIPERTENSIÓN'));
$pdf->Cell(100,6,utf8_decode('' . $hipertension), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('DIABETES'));
$pdf->Cell(100,6,utf8_decode('' . $diabetes), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('HIPO O HIPERTIROIDISMO'));
$pdf->Cell(100,6,utf8_decode('' . $hiptiroidismo), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('SOBREPESO'));
$pdf->Cell(100,6,utf8_decode('' . $sobrepeso), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('CÁNCER'));
$pdf->Cell(100,6,utf8_decode('' . $cancer), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('OTRA(S)'));
$pdf->Cell(100,6,utf8_decode('' . $oenfermedad), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('NINGUNA'));
$pdf->Cell(100,6,utf8_decode('' . $nenfermedad), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Especifique qué otra(s) enfermedades:'));
$pdf->Cell(100,6,utf8_decode('' . $qotraenfermedad), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Quién la padece o padeció?'));
$pdf->Cell(100,6,utf8_decode('' . $padece), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Toma refresco?'));
$pdf->Cell(100,6,utf8_decode('' . $refresco), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Con qué frecuencia?'));
$pdf->Cell(100,6,utf8_decode('' . $refrescofrec), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Que cantidad?'));
$pdf->Cell(100,6,utf8_decode('' . $refrescocantidad), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cuánta agua natural toma en un día?'));
$pdf->Cell(100,6,utf8_decode('' . $agua), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('¿Cuántas frutas se come en un día?'));
$pdf->Cell(100,6,utf8_decode('' . $fruta), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Algún alimento que no tolere o sea alérgico:'));
$pdf->Cell(100,6,utf8_decode('' . $alergico), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Comida:'));
$pdf->MultiCell(100,6,utf8_decode('' . $comida), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Fecha de registro:'));
$pdf->Cell(100,6,utf8_decode('' . $fregistro), 1);
$pdf->ln();
$pdf->Cell(80,6,utf8_decode('Hora de registro:'));
$pdf->Cell(100,6,utf8_decode('' . $hregistro), 1);
$pdf->Output('F', 'historia/historia_clinica.pdf');
//$pdf->Output('I', 'historia/historia_clinica.pdf');
//fin pdf
$destino2jb = 'joaquin.fc@gmail.com';
/*$destino2jb = "patricia.rodriguez.e@gmail.com";*/
$asuntojb = "Historia Clínica";
$comentariojb .= "Historia Clínica"."\n"."\n";
$comentariojb .= $nombre." ".$apellidos."\n"."\n";
$comentariojb .= "Fecha de la cita: ".$fcita."\n";
$comentariojb .= "Hora de la cita: ".$hcita."\n";
$comentariojb .= "Género: ".$genero."\n";
$comentariojb .= "Edad: ".$edad."\n";
$comentariojb .= "Fecha de nacimiento: ".$fnacimiento."\n";
$comentariojb .= "Estado Civil: ".$edocivil."\n";
$comentariojb .= "Número de hijos: ".$nohijos."\n";
$comentariojb .= "Horario de trabajo: ".$horariotrab."\n";
$comentariojb .= "Teléfono/WhatsApp: ".$telefono."\n";
$comentariojb .= "Tratamientos anteriores de reducción peso: ".$tratapeso."\n";
$comentariojb .= "Enfermedades destacadas: ".$enfermedad."\n";
$comentariojb .= "Su presión arterial es: ".$parterial."\n";
$comentariojb .= "Cirugías de importancia que le hayan realizado: ".$cirugias."\n";
$comentariojb .= "Su digestión es: ".$digestion."\n";
$comentariojb .= "Problemas de la tiroides: ".$ptiroides."\n";
$comentariojb .= "Actualmente toma algún medicamento o vitaminas o suplemento: ".$mediact."\n";
$comentariojb .= "¿Cúal(es)? ".$quemediact."\n";
$comentariojb .= "Motivo: ".$mediactmotivo."\n";
$comentariojb .= "¿Realiza alguna actividad física? ".$actfisica."\n";
$comentariojb .= "¿Qué actividad física realiza? ".$queactfis."\n";
$comentariojb .= "¿Con qué frecuencia? ".$frecactfis."\n";
$comentariojb .= "¿Cuál es el peso mínimo con el que se ha mantenido en los últimos 3 años? ".$pesomintresa."\n";
$comentariojb .= "¿Ingiere alcohol? ".$alcohol."\n";
$comentariojb .= "¿Con qué frecuencia? ".$alcoholfrec."\n";
$comentariojb .= "¿Fuma? ".$fuma."\n";
$comentariojb .= "¿Con qué frecuencia? ".$fumafrec."\n";
$comentariojb .= "¿Cuantos cigarros al día? ".$fumanocigarros."\n";
$comentariojb .= "¿Sus menstruaciones son regulares? ".$mestruaregu."\n";
$comentariojb .= "¿Cuál es el motivo? ".$mestruanoregumot."\n";
$comentariojb .= "¿Toma anticonceptivos u hormonales? ".$anticonceptivo."\n";
$comentariojb .= "¿Cuál anticonceptivo u hormonal toma? ".$queanticonceptivo."\n";
$comentariojb .= "Enfermedades en la familia: "."\n";
$comentariojb .= "HIPERTENSIÓN ".$hipertension."\n";
$comentariojb .= "DIABETES ".$diabetes."\n";
$comentariojb .= "HIPO O HIPERTIROIDISMO ".$hiptiroidismo."\n";
$comentariojb .= "SOBREPESO ".$sobrepeso."\n";
$comentariojb .= "CÁNCER ".$cancer."\n";
$comentariojb .= "OTRA(S) ".$oenfermedad."\n";
$comentariojb .= "NINGUNA ".$nenfermedad."\n";
$comentariojb .= "Especifique qué otra(s) enfermedades: ".$qotraenfermedad."\n";
$comentariojb .= "¿Quién la padece o padeció? ".$padece."\n";
$comentariojb .= "¿Toma refresco? ".$refresco."\n";
$comentariojb .= "¿Con qué frecuencia? ".$refrescofrec."\n";
$comentariojb .= "¿Que cantidad? ".$refrescocantidad."\n";
$comentariojb .= "¿Cuánta agua natural toma en un día? ".$agua."\n";
$comentariojb .= "¿Cuántas frutas se come en un día? ".$fruta."\n";
$comentariojb .= "Algún alimento que no tolere o sea alérgico: ".$alergico."\n";
$comentariojb .= "Lo que come habitualmente en un día: ".$comida."\n";
$comentariojb .= "Fecha de registro: ".$fregistro."\n";
$comentariojb .= "Hora de registro: ".$hregistro."\n";
/*echo "esto es comentariojb: $comentariojb";*/
$attachment = chunk_split(base64_encode(file_get_contents('historia/formulario.pdf')));
$headersjb = 'From:nutriant@creativityw.com'."\r\n".
'Reply-To:'.$destino2jb."\r\n".
'Bcc: cratvtw@gmail.com'."\r\n".
'X-Mailer: PHP/'.phpversion();
mail( $destino2jb, $asuntojb, $comentariojb, $headersjb );
header( "Location: mensaje.html" );
}
else {
echo "Formulario no enviado";
}
?>