Foros del Web » Programando para Internet » PHP »

fdpf control pagina

Estas en el tema de fdpf control pagina en el foro de PHP en Foros del Web. buenas estoy empezando a usar esta libreria para crear documentos pdf y me surgio una duda, sera que yo a partir de la segunda hoja ...
  #1 (permalink)  
Antiguo 22/07/2010, 19:23
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
fdpf control pagina

buenas estoy empezando a usar esta libreria para crear documentos pdf y me surgio una duda, sera que yo a partir de la segunda hoja puedo llamar a un encabezado diferente de la primera?? estoy realizando un record academico y en la primera va el encabezado de la institucion pero en la segunda solo tendria que identificar al alumno si creo un header() se me pone el encabezado en todas las paginas pero se me hace muy largo sera que es posible lo que kiero?? otra duda es que si puedo tener control de cuantas tablas puedo crear por pagina gracias espero respuestas es que estoy algo nuevo con esta libreria claro trae tutorial pero en el tutorial no se presentan est tipo de problemas gracias de antemano
  #2 (permalink)  
Antiguo 23/07/2010, 14:55
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: fdpf control pagina

bueno les cuento que lo solucione deg de poner los encabezados con la funcion los tube q hacer uno a uno en las paginas para asi tener control, con respecto al record lo que hice fue poner una cantidad maxima de registros por pagina si pasa esta cantidad pasa la tabla del periodo a la siguiente pagina y devuelve a cero la variable donde guardaba esa información, lo comento xq alomejor hay alguien q como yo estaba pariendo asi x lo menos se le da una idea, o alomejor a alguien se le ocurre unamejor
  #3 (permalink)  
Antiguo 23/07/2010, 15:01
 
Fecha de Ingreso: junio-2010
Ubicación: Venezuela, Zulia
Mensajes: 686
Antigüedad: 14 años, 4 meses
Puntos: 55
Respuesta: fdpf control pagina

bueno pero seria bueno que colocaras aqui el codigo, asi el que lo necesite lo utiliza


saludos
  #4 (permalink)  
Antiguo 23/07/2010, 15:14
Avatar de carlos_belisario
Colaborador
 
Fecha de Ingreso: abril-2010
Ubicación: Venezuela Maracay Aragua
Mensajes: 3.156
Antigüedad: 14 años, 7 meses
Puntos: 461
Respuesta: fdpf control pagina

bueno asi es solo copie esa parte del codigo ya que hay otros reportes ahi, ah tambien cambie los campos ya para q no me cree problemas en el trabajo espero a alguien le sirva
Código PHP:
<?php 
                        $peracaActu
=$peraca['periodo'];            

                        
$conperaca=$conect->consulta2("select distinct periodo,semestre from tablaNotas where cedula='$cedula' and periodo<>'$peracaActu'");

                        
$i=0;

                        while(
$reg=mysql_fetch_array($conperaca))

                        {    

                            
$peracas[$i]=$reg['periodo'];

                            
$semestre[$i]=$reg['semestre'];

                            
$peracade[$i]=$reg['semestre']."-".$reg['periodo'];

                            
$i=$i+1;                        

                        }    

                        
$cant=mysql_num_rows($conperaca);

                        
$totalpuntos=0;    

                        
$this->Image('../../../logo_unefa.jpg',15,5,25);

                        
$this->SetFont('Times','',12);

                        
$titulo="REPÚBLICA BOLIVARIANA DE VENEZUELA";    

                        
$this->Cell(0,5,$titulo,0,0,'C');

                        
$this->Ln();

                        
$this->Cell(0,5,"datos institucion",0,0,'C');

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Ln();                        

                        
$this->SetFont('Times','B',18);

                        
$this->Cell(0,5,"RECORD ACADÉMICO",0,0,'C');

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Ln();

                        
$this->SetFont('Times','',10);

                        
$this->Cell(0,5,"ESTUDIANTE: ".$nombres."  CÉDULA DE IDENTIDAD: ".$cedula."      MATRÍCULA: ".$alumno['fecing']."-".$codesp."-".$cedula,0,0,'J');

                        
$this->Ln();

                        
$this->Cell(0,5,"CARRERA: ".$carrera."  SEMESTRE: ".$semestre_act."      PENSUM VIGENCIA: ".$pensum1,0,0,'J');

                         
$this->Ln();

                        
$this->Ln();

                        
$this->setFont('arial','B','10');

                        

                        
$crediEquivalencia=0;                                    

                        for(
$a=0;$a<$cant;$a++)

                        {                            

                            
$data=array();

                            
$reg=$conect->consulta2("SELECT distinct tablaNotas.condic as condic,tablaNotas.codmat as codmat,tablaMaterias.nommat as nommat,tablaNotas.notdef as notdef,tablaNotas.notrep as notrep,tablaMaterias.credito as credito from tablaNotas inner join tablaMaterias where tablaNotas.periodo='$peracas[$a]' and tablaNotas.semestre='$semestre[$a]' and tablaNotas.cedula='$cedula' and tablaNotas.espe=tablaMaterias.espe and tablaNotas.mat=materi.mat");

                            
$cantidad_mat=mysql_num_rows($reg);

                            while(
$regis=mysql_fetch_assoc($reg))

                            {

                                
$totalcredito=$totalcredito+$regis['credito'];

                                switch(
$regis['condic'])// establecemos la condicion en la que esta inscrita la materia

                                
{

                                    case 
"N"$condicion=" ";

                                    break;

                                    case 
"L"$condicion="PARALELO";

                                    break;

                                    case 
"P"$condicion="REPITENCIA";

                                    break;

                                    case 
"R"$condicion="REPARO";

                                    break;

                                    case 
"G"$condicion="REPARO-PENDIENTE";

                                    break;

                                    case 
"A"$condicion="APROBO";

                                    break;

                                    case 
"Q"$condicion="REPROBO";

                                    break;        

                                    case 
"W"$condicion="NOTA NO CONSIGNADA (FINAL)";

                                    break;        

                                    case 
"F"$condicion="NOTA NO CONSIGNADA (REPITENCIA)";

                                    break;        

                                    case 
"Z"$condicion="NOTA NO CONSIGNADA (PARALELO)";

                                    break;        

                                }

//                                echo $regis['condic'];

                                
if($regis['condic']!="E")

                                {

                                    
$crediCur=$crediCur+$regis['credito'];

                                }

                                if(
$regis['condic']=="A" || $regis['condic']=="Q" || $regis['condic']=="E")

                                {

                                    if(
$regis['condic']=="E")

                                    {

                                        
$crediEquivalencia=$crediEquivalencia+1;

                                    }                                    

                                    
$puntos=0;

                                }

                                if(
$regis['condic']=="N")

                                {

                                    
$puntos=$regis['credito']*$regis['notdef'];

                                    
$totalpuntos=$totalpuntos+$puntos;

                                    
//echo     $puntos." ".$totalpuntos."<br>";                                

                                
}    

                                if(
$regis['condic']=="R" || $regis['condic']=="G")

                                {

                                    
$puntos=$regis['credito']*$regis['notrep'];

                                    
$totalpuntos=$totalpuntos+$puntos;

                                }

                                if(
$regis['condic']=="L" || $regis['condic']=="P")

                                {

                                    
$puntos=$regis['credito']*($regis['notrep']-$regis['notdef']);

                                    if(
$puntos<0)

                                    {

                                        
$puntos=$puntos*(-1);

                                    }                                                        

                                    
$totalpuntos=$totalpuntos+$puntos;

                                }                                                                    

                                
$data[]=array_merge($regis,array('obv'=>$condicion),array('puntos'=>$puntos));    

                            }
#fin del while    de proceso de datos

                            
$cantidad_aaa=$cantidad_aaa+$cantidad_mat+3;

                            
$indice=$totalpuntos/$totalcredito;

                            
$indice=number_format($indice,2);

                            
$header=array('Cod. Materia','Nombre Materia','Def.','Rep','U.C','Puntos','Observación');                    //$headers=array('Cod. Materia','Nombre Materia','Sem','U.C.','Condicion','Seccion');        



                            
$this->setFont('Arial','',10);

                            
$this->Cell(0,5,"Semestre: ".$peracade[$a],0,0,'J');

                             
$this->Ln();

                            
$this->tablaRecord($header,$data);

                            
$this->Ln();                                

                            
$this->Cell(0,5,"                                                                                                            Acumulado....................................".$totalcredito."       ".$totalpuntos."     Indice Acumulado:".$indice,0,0,'J');                                

                            
$this->Ln();    

                            
$this->Ln();                    

                            if(
$cantidad_aaa>19 || $cantidad_aaa==19)# aqui hago la validacion para la cantidad de espacios noc xq no kiso agarrarme el >= entonces lo puc asi 

                            
{

                                
$cantidad_aaa=0;

                                if(
$cant!=$a+1)

                                {

                                    
$this->addPage();

                                    
$this->setFont('Arial','','12');

                                    
$this->Cell(0,7,"                    ESTUDIANTE: ".$nombres,0,0,'J');

                                    
$this->Ln();

                                    
$this->Cell(0,7,"                    CÉDULA DE IDENTIDAD No.: ".$cedula."     MATRÍCULA: ".$alumno['fecing']."-".$codesp."-".$cedula,0,0,'J');

                                    
$this->Ln();

                                    
$this->Cell(0,7,"                    CARRERA: ".$carrera."      SEMESTRE: ".$semestre_act,0,0,'J');

                                    
$this->Ln();

                                    
$this->Ln();                        

                                }                                

                            }            

                        }
# fin del for de peracade                        

                        
$this->AddPage();

                        
$this->setFont('Arial','','12');

                        
$this->Cell(0,7,"                    ESTUDIANTE: ".$nombres,0,0,'J');

                        
$this->Ln();

                        
$this->Cell(0,7,"                    CÉDULA DE IDENTIDAD No.: ".$cedula."     MATRÍCULA: ".$alumno['fecing']."-".$codesp."-".$cedula,0,0,'J');

                        
$this->Ln();

                        
$this->Cell(0,7,"                    CARRERA: ".$carrera."      SEMESTRE: ".$semestre_act,0,0,'J');

                        
$this->Ln();                    

                        
$this->Ln();                    

                        
$this->Ln();                    

                        
$this->Cell(0,7,"Total de U.de Credito Cursadas:                 ".$crediCur,0,0,'J');    

                        
$this->Ln();

                        
$this->Cell(0,5,"Total de U/C Concedidas P/Equivalencia:      ".$crediEquivalencia,0,0,'J');    

                        
$this->Ln();

                        
$this->Cell(0,5,"                                                                   _______",0,0,'J');    

                        
$this->Ln();

                        
$this->Cell(0,7,"Total de Unidades de Credito:                     ".$totalcredito,0,0,'J');    

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Cell(0,7,"Índice Académico:  ".$indice,0,0,'C');    

                        
$this->Ln();

                        
$this->Ln();

                        
$this->setFont('Arial','B','10');

                        
$this->Cell(0,7,"OBSERVACIONES: ",0,0,'J');    

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Ln();                        

                        
$this->Ln();

                        
$this->Ln();

                        
$this->Ln();

                        
$this->setFont('Arial','B','10');

                        
$this->Cell(0,5,"            _____________________________________",0,0,'L');

                        
$this->Ln();

                        
$this->Cell(0,5,"                 ".$datosSec['rango_min']." ".$datosSec['nombres'],0,0,'L');

                        
$this->Ln();                        

                        
$this->Cell(0,5,"                  ".$datosSec['cargo'],0,0,'L');

                        
$this->Ln();

                        
$this->Cell(0,5,"______________________________________________",0,0,'R');

                        
$this->Ln();

                        
$this->Cell(0,5,$datosDec['rango_min']." ".$datosDec['nombres']."        ",0,0,'R');

                        
$this->Ln();

                        
$this->Cell(0,5,$datosDec['cargo']."    ",0,0,'R');

//                        ."                  ".$datosDec['rango_min']." ".$datosDec['nombres']."   "
si no entienden algo me preguntan x aki o por privado xq el codigo es medio largo

Última edición por carlos_belisario; 23/07/2010 a las 19:49

Etiquetas: control
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:18.