Categorías > Lenguajes > PHP > Problema libreria html2pdf ...
Nuevo Mensaje | Responder
AdrianSeg


53 envíos
Desconectado
1747 lecturas
2 respuestas
Problema libreria html2pdf22-04-2010 a las 03:57:21

Genero un pdf usando esa libreria, cuando saco los datos de los row no hay problemas al mostrarlo..el problema me viene cuando quiero meter un campo dinámico..me da error...error de cabeceras enviadas y no hay ni espacios en blanco,ni html antes de generar el pdf ni nada que provoque ese error asi que no se k peude ser...se os ocurre otra manera de meter lo que hace la funcion evidencia dntro del codigo...?


Código PHP:

Código Fuente:
<?php
session_start();
include('../../../../conexion.php');

//Hacemos el Select en la base de datos
mysql_query("SET NAMES 'utf8'"); //Solución tildes de los huevos

$sql="SELECT * FROM p101p WHERE titulo='".$_SESSION["s_carrera"]."' AND centro='".$_SESSION["s_centro"]."' AND campus='".$_SESSION["s_campus"]."'";

$result=mysql_query($sql);
$row= mysql_fetch_array($result);


$sqla="SELECT * FROM p101concrecionesp WHERE titulo='".$_SESSION["s_carrera"]."' AND centro='".$_SESSION["s_centro"]."' AND campus='".$_SESSION["s_campus"]."'";

$resulta=mysql_query($sqla);



function evidencia() {
              if (mysql_num_rows($resulta) != 0){


              while($row= mysql_fetch_array($resulta)){


        echo "<fieldset>
<legend></legend>
        <span class='negrita'>MÓDULO/MATERIA:</span><br />
        <span class='negrita'>Evidencias</span>
        <label for='1c'><textarea name='evidencia' wrap='off' id='1c' disabled>".$row[evidencia]."
</textarea></label>
        <span class='negrita'>Observaciones:</span>
        <label for='1d'><textarea name='respuesta' wrap='off' id='1d' disabled >".$row[respuesta]."
</textarea></label>
           
    </fieldset>

</form>";

}
echo "</div>";
}



              return $evidencia;
}

$raiz = evidencia();


$html1 = '</head>
<!--comentario-->
<body>

<div id="cont">
<div id="logo"></div>

<div class="fondo">
    <div id="cuerpo"><br />
    <h1>INFORME DEL COORDINADOR/A DE LAS MATERIAS DEL POSGRADO'.tex.'</h1>
    Posgrado:<!--aquí aparecerá la titulación con la que estamos trabajando--><br />
    Curso académico:<!--de la base de datos (por determinar)--><br />
    Nombre y apellidos:<!--del cordinador sacados de la base de datos "usuarios"--><br />
   
    <form id="form1" name="form1" method="post" action="">
    <div class="apart_gen">I. SOBRE LAS GUÍAS DOCENTES DE LAS MATERIAS DEL POSGRADO</div>
    <input name="id" type="hidden" id="id" value="" />
    <fieldset> 
        <legend>'.$row['evidencia'].'1. Accesibilidad y difusión</legend>
        <span class="negrita">Evidencias</span> (medio de difusión, información sobre cómo acceder a ella, formatos de descarga...):<br />
    <div style="padding:0pt; border: 1px solid #555555;">'.$row['i1evidencia'].'</div>
        <br />
        <span class="negrita">Observaciones:</span><br />
        <div style="padding:0pt; border: 1px solid #555555;">'.$row['i1observacion'].'</div>
    </fieldset>
    <fieldset>
        <legend>2. Grado de concreción, sufuciencia y diversidad de los componentes de las Guías (aportar esta información especificada por módulos)</legend>
        <span class="negrita">MÓDULO/MATERIA:</span><br />
        <span class="negrita">Evidencias</span> (Indicar la materia. Se definen las competencias y los objetivos de forma detallada; se especifican los contenidos; se explican las estrategias docentes; se detallan los recursos a utilizar; se indican las acciones tutoriales a desarrollar; se establecen los criterios y procedimientos para la evaluación...):
                 
  <div style="padding:0pt; border: 1px solid #555555;">asdasdasdasdadaasdasdasdasdasdasdasdasda</div>
        <span class="negrita">Observaciones:        </span>
        <div style="padding:0pt; border: 1px solid #555555;">asdasdaasdasdasdasdasda</div>
    </fieldset>
    <div class="apart_gen">II. SOBRE LA COORDINACIÓN ENTRE DOCENTES</div>
    <fieldset> 
   
    '.$raiz.'
        <legend>1. Grado de Coordinación entre los docentes que comparten módulo</legend>
        <span class="negrita">Evidencias</span> (número de actas de sesiones de coordinación de módulos desarrolladas; nivel de asistencia y participación del profesorado en dichas sesiones, proyectos de innovación...):<br />
<div style="padding:0pt; border: 1px solid #555555;">'.$row['ii1evidencia'].'</div>        <br />
        <span class="negrita">Observaciones:</span><br />
<div style="padding:0pt; border: 1px solid #555555;">'.$row['ii1observacion'].'</div>    </fieldset>
    <fieldset> 
        <legend>2. Grado de Coordinación entre los docentes de diferentes módulos</legend>
        <span class="negrita">Evidencias</span> (número de actas de sesiones de coordinación de módulos desarrolladas; nivel de asistencia y participación del profesorado en dichas sesiones, proyectos de innovación...):<br />
<div style="padding:0pt; border: 1px solid #555555;">'.$row['ii2evidencia'].'</div>        <br />
        <span class="negrita">Observaciones:</span><br />
<div style="padding:0pt; border: 1px solid #555555;">'.$row['ii2observacion'].'</div>    </fieldset>
    <div class="apart_gen">III. INCIDENCIAS SURGIDAS EN EL DESARROLLO DE LA DOCENCIA Y RESPUESTAS DADAS</div>
    <fieldset>
        <span class="negrita">a. Incidencias relacionadas con las guías docentes (en los apartados I.1, I.2 y I.3):        </span>
<div style="padding:0pt; border: 1px solid #555555;">asdasdasddasdaasdasdasdasdasdasdasdasda</div>        <br />
        <span class="negrita">b. Respuestas dadas a las incidencias surgidas:</span><br />
<div style="padding:0pt; border: 1px solid #555555;">asdasdassdasdasdasdasda</div>        añadir <a href="#">[+]</a> incidencias y respuestas
    </fieldset>
    <fieldset> 
        <div class="apart_gen">Otra información de interés</div>
<div style="padding:0pt; border: 1px solid #555555;">'.$row['otro'].'</div>    </fieldset>
    </form><br />
   
    </div>
</div>
<div class="fondo2"></div>

</div>
</div>
</body>
</html>


';

$html = utf8_encode($html1);
include("mpdf.php");
$mpdf=new mPDF();
$mpdf->useOnlyCoreFonts = true;
$mpdf->SetDisplayMode('fullpage');
// LOAD a stylesheet
$stylesheet = file_get_contents('stilo.css');
$mpdf->WriteHTML($stylesheet,1); // The parameter 1 tells that this is css/style only and nobody/html/text
$mpdf->WriteHTML($html,2);
$mpdf->Output();
exit;
//==============================================================
//==============================================================
//==============================================================
?>


Responder | Citar | Moderar | Mensaje Privado
Training Channel
wilmaforez


65 envíos
Desconectado

#1
RE: Problema libreria html2pdf22-04-2010 a las 05:25:59

Cosas que he visto:

Las primera consulta, no la usas para nada. Coges la primera línea, y luego, si la segunda consulta tiene resultados la sobreescribes.

La función evidencia() devuelve $evidencia, que no está definido antes (o no lo veo).

En el tocho de html que guardas en la variable $html1, pone:
POSGRADO'.tex.'</h1>
A tex le falta el $ . ( y tampoco veo donde está definido)

En cuanto a los headers, si algo da error se envían.


Responder | Citar | Moderar | Mensaje Privado
Sorancio


307 envíos
Desconectado

#2
RE: Problema libreria html2pdf22-04-2010 a las 07:55:28

Creo que hubo un problema parecido recientemente. El problema es que las cabeceras HTTP (headers) se envían antes del documento, por eso, al cargar el documento, no se pueden volver a envíar. La solución que se me ocurre es redireccionar a otra página donde te envíe el PDF.


Responder | Citar | Moderar | Mensaje Privado