Foros del Web » Programando para Internet » PHP »

FPDF-PHP No logro que muestren archivos en solo 2 columnas una detrás de la otra

Estas en el tema de FPDF-PHP No logro que muestren archivos en solo 2 columnas una detrás de la otra en el foro de PHP en Foros del Web. Hola amigos, no logro que mis canciones se muestren en solo 2 columnas una detrás de la otra, es decir; que cuando las canciones lleguen ...
  #1 (permalink)  
Antiguo 16/09/2009, 11:44
 
Fecha de Ingreso: septiembre-2009
Ubicación: Valencia, Edo. Carabobo
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
FPDF-PHP No logro que muestren archivos en solo 2 columnas una detrás de la otra

Hola amigos, no logro que mis canciones se muestren en solo 2 columnas una detrás de la otra, es decir; que cuando las canciones lleguen al final de la hoja dentro de la primera columna, automáticamente comience en la segunda columna y al terminar la segunda columna pase a la siguiente hoja.
El código que muestro a continuación hace lo siguiente, nuestra las canciones dentro de la primera columna pero al llegar a la parte de abajo pasa a la segunda columna pero me da el error que no lo hace al principio de la segunda columna sino donde comenzó la canción que llego al final de la primera columna.
Les pido toda la ayuda posible ya que tengo semanas en esto, no soy muy bueno en FPDF y mi experiencia en PHP es intermedia.
!Gracias!

SQL

-- --------------------------------------------------------
--
-- Estructura de tabla para la tabla `cancionero`
--

CREATE TABLE `cancionero` (
`id` bigint(4) NOT NULL default '0',
`id_cat` bigint(4) NOT NULL default '0',
`archivo` varchar(150) NOT NULL default '0',
`mp3` bigint(4) NOT NULL default '0',
`notas` bigint(4) NOT NULL default '0',
`imagen` varchar(15) NOT NULL default '0',
`autor` varchar(150) NOT NULL default '0',
`titulo` varchar(150) NOT NULL default '0',
`primera_linea` varchar(150) NOT NULL default '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

--
-- Volcar la base de datos para la tabla `cancionero`
--

INSERT INTO `cancionero` (`id`, `id_cat`, `archivo`, `mp3`, `notas`, `imagen`, `autor`, `titulo`, `primera_linea`) VALUES
(1, 1, '01_01', 0, 0, 'image001', 'FE Y ALEGRÍA', 'HIMNO DE FE Y ALEGRÍA', 'Fe será siempre nuestro ideal, y alegría en los corazones,'),
(2, 1, '01_02', 1, 0, 'image002', 'FE Y ALEGRÍA', 'HIMNO DE FE Y ALEGRÍA', 'FE QUE DA LA ALEGRÍA, FE QUE DA LA ILUSIÓN,'),
(3, 2, '02_03', 0, 0, 'image003', 'Anónimo', 'CANTO DE ENTRADA', 'Hoy venimos llenos de ilusión, Señor, ante tu altar');
-- --------------------------------------------------------



Canción: 01_02.txt

-- --------------------------------------------------------
FE QUE DA LA ALEGRÍA, FE QUE DA LA ILUSIÓN,
CONSTRUIMOS UNIDOS, LA ESPERANZA DE DIOS

Esperanza que es vida, es justicia y amor,
no quedad satisfechos mientras haya dolor (2)

Formaremos un pueblo de noble corazón,
donde nuestros hermanos no sufran opresión (2)

Alma de Venezuela, esperanza de Dios,
será luz en mi vida su mensaje de amor (2)

(Himno compuesto para los 25 años de Fe y Alegría)
-- --------------------------------------------------------


imprimir_pdf.php

Código PHP:
<?php
//    $this->Cell($ancho,$alto,$cadena,$borde,$posición,$aliniación,$relleno);

require('fpdf.php');

class 
PDF extends FPDF
{
//Columna actual
var $col=0;
//Ordenada de comienzo de la columna
var $y0;

function 
Header()
{
    
//Cabacera
    
global $title;

    
$this->Image('cancionero.png',10,3,33);
    
$this->SetFont('Arial','B',15);
    
$w=$this->GetStringWidth($title)+6;
    
$this->SetX((210-$w)/2);
    
$this->SetDrawColor(0,80,180);
    
$this->SetFillColor(230,230,0);
    
$this->SetTextColor(220,50,50);
    
$this->SetLineWidth(0);
    
$this->Cell($w,9,$title,1,1,'C',1);
    
$this->Ln(10);
    
//Guardar ordenada
    
$this->y0=$this->GetY();
}

//Pie de página
function Footer()
{
    
//Posición: a 1,5 cm del final
    
$this->SetY(-15);
    
//Arial italic 8
    
$this->SetFont('Arial','I',8);
    
//Número de página
    //$this->Cell(0,10,'Fdfgtral',0,55,'C');
    
$this->Cell(0,10,'Fe y Alegría, Oficina Zona Central',0,0,'C');
    
$this->Cell(0,10,'Página '.$this->PageNo().'/{nb}',0,0,'R');
}

function 
SetCol($col)
{
    
//Establecer la posición de una columna dada
    
$this->col=$col;
    
$x=10+$col*100;                                            // tamaño de las columnas
    
$this->SetLeftMargin($x);
    
$this->SetX($x);
}

function 
AcceptPageBreak()
{
    
//Método que acepta o no el salto automático de página
    
if($this->col<1)
    {
        
//Ir a la siguiente columna
        
$this->SetCol($this->col+1);
        
//Establecer la ordenada al principio
        
$this->SetY($this->y0);
        
//Seguir en esta página
        
return false;
    }
    else
    {
        
//Volver a la primera columna
        
$this->SetCol(0);
        
//Salto de página
        
return true;
    }
}

/*
function ChapterTitle($num,$label)
{
    //Título
    $this->SetFont('Arial','',12);
    $this->SetFillColor(0,0,255);
    $this->Cell(0,6,"ID__ $num : $label",0,1,'L',1);
    $this->Cell(0,6,"ID__CAT $num : $label",0,1,'L',1);
    $this->Ln(4);
    //Guardar ordenada
    $this->y0=$this->GetY();
}*/

function ChapterBody($fichier,$titulo,$autor)
{
    
//Abrir fichero de texto
    
$f=fopen($fichier,'r');
    
$txt=fread($f,filesize($fichier));
    
fclose($f);
    
//Fuente
    
$this->SetFont('Times','',10);
    
//Imprimir texto en una columna de 6 cm de ancho
    
$this->Ln();
    
$this->Cell(0,5,'Categoría: '.$categoria);        // categoría ,0,1,'C',0
    
$this->Ln();
    
$this->Cell(0,5,'Título: '.$titulo);                // título
    
$this->Ln();
    
$this->Cell(0,5,"Autor : $autor");                // autor
    
$this->Ln();
    
$this->MultiCell(90,5,$txt);                                // tamaño de las columnas
    
$this->Ln();
    
//Cita en itálica
    
$this->SetFont('','I');
    
$this->Cell(0,5,'(fin del extracto)');
    
//Volver a la primera columna
        
$this->Ln(4);
        
$this->y0=$this->GetY();
    
//$this->SetCol(0);


}

function 
PrintChapter($num,$title,$file)
{
    
//Añadir capítulo
    
$this->AddPage();
$server="localhost";
$user="fyazonac_admin";
$password="13189079";
$database="fyazonac_joomla";
$id=2;
mysql_connect("$server","$user","$password");
mysql_select_db("$database");
$descrip mysql_fetch_array(mysql_query("SELECT * FROM cancionero WHERE id='$id'"));
$rs2 mysql_query("SELECT * FROM $database.cat_cancionero");
while(
$row2 mysql_fetch_array($rs2)) 
{
$titulo $descrip["titulo"];
$autor $descrip["autor"];
    
$this->ChapterBody($file,$titulo,$autor);
}

}
}

$pdf=new PDF();
$pdf->AliasNbPages(); // total de números de páginas
$title='CANCIONERO ¡QUE CANTE LA VIDA MISMA!';
$pdf->SetTitle($title);
$pdf->SetAuthor('Fe y Alegría');
$pdf->PrintChapter($descrip["id"],'Nombre Archivo: '.$descrip["archivo"].' ','../../archivos/cancionero/1/'.$descrip["archivo"].'.txt');
$pdf->Output();
?>
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 21:00.