Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/12/2008, 22:27
goedecke
 
Fecha de Ingreso: julio-2007
Mensajes: 13
Antigüedad: 19 años, 2 meses
Puntos: 0
De acuerdo Error con INCLUDE y FPDF

Tengo un problema al poner un include con una clase dentro de una pagina que me generara automaticamente un PDF con FPDF

Codigo de functions.inc.php

Código PHP:


class precio {
    function 
num2letras($num, $fem = false, $dec = true) { 
    
//if (strlen($num) > 14) die('El n?mero introducido es demasiado grande'); 
       
$matuni[2]  = 'dos'; 
       
$matuni[3]  = 'tres'; 
       
$matuni[4]  = 'cuatro'; 
       
$matuni[5]  = 'cinco'; 
       
$matuni[6]  = 'seis'; 
       
$matuni[7]  = 'siete'; 
       
$matuni[8 ]  = 'ocho'; 
       
$matuni[9]  = 'nueve'; 
       
$matuni[10] = 'diez'; 
       
$matuni[11] = 'once'; 
       
$matuni[12] = 'doce'; 
       
$matuni[13] = 'trece'; 
       
$matuni[14] = 'catorce'; 
       
$matuni[15] = 'quince'; 
       
$matuni[16] = 'dieciseis'; 
       
$matuni[17] = 'diecisiete'; 
       
$matuni[18] = 'dieciocho'; 
       
$matuni[19] = 'diecinueve'; 
       
$matuni[20] = 'veinte'; 
       
$matunisub[2] = 'dos'; 
       
$matunisub[3] = 'tres'; 
       
$matunisub[4] = 'cuatro'; 
       
$matunisub[5] = 'quin'; 
       
$matunisub[6] = 'seis'; 
       
$matunisub[7] = 'sete'; 
       
$matunisub[8] = 'ocho'; 
       
$matunisub[9] = 'nove'; 
    
       
$matdec[2] = 'veint'; 
       
$matdec[3] = 'treinta'; 
       
$matdec[4] = 'cuarenta'; 
       
$matdec[5] = 'cincuenta'; 
       
$matdec[6] = 'sesenta'; 
       
$matdec[7] = 'setenta'; 
       
$matdec[8] = 'ochenta'; 
       
$matdec[9] = 'noventa'; 
       
$matsub[3]  = 'mill'; 
       
$matsub[5]  = 'bill'; 
       
$matsub[7]  = 'mill'; 
       
$matsub[9]  = 'trill'; 
       
$matsub[11] = 'mill'; 
       
$matsub[13] = 'bill'; 
       
$matsub[15] = 'mill'; 
       
$matmil[4]  = 'millones'; 
       
$matmil[6]  = 'billones'; 
       
$matmil[7]  = 'de billones'; 
       
$matmil[8]  = 'millones de billones'; 
       
$matmil[10] = 'trillones'; 
       
$matmil[11] = 'de trillones'; 
       
$matmil[12] = 'millones de trillones'; 
       
$matmil[13] = 'de trillones'; 
       
$matmil[14] = 'billones de trillones'; 
       
$matmil[15] = 'de billones de trillones'; 
       
$matmil[16] = 'millones de billones de trillones'; 
    
       
$num = trim((string)@$num); 
       if (
$num[0] == '-') { 
          
$neg = 'menos '; 
          
$num = substr($num, 1); 
       }else 
          
$neg = ''; 
       while (
$num[0] == '0') $num = substr($num, 1); 
       if (
$num[0] < '1' or $num[0] > 9) $num = '0' . $num; 
       
$zeros = true; 
       
$punt = false; 
       
$ent = ''; 
       
$fra = ''; 
       for (
$c = 0; $c < strlen($num); $c++) { 
          
$n = $num[$c]; 
            if (! (
strpos(".,'''", $n) === false)) { 
             if (
$punt) break; 
             else{ 
                
$punt = true; 
                continue; 
             } 
    
          }elseif (! (
strpos('0123456789', $n) === false)) { 
             if (
$punt) { 
                if (
$n != '0') $zeros = false; 
                
$fra .= $n; 
             }else 
    
                
$ent .= $n; 
          }else 
    
             break; 
    
       } 
       
$ent = '     ' . $ent; 
       if (
$dec and $fra and ! $zeros) { 
          
$fin = ' coma'; 
          for (
$n = 0; $n < strlen($fra); $n++) { 
             if ((
$s = $fra[$n]) == '0') 
                
$fin .= ' cero'; 
             elseif (
$s == '1') 
                
$fin .= $fem ? ' una' : ' un'; 
             else 
                
$fin .= ' ' . $matuni[$s]; 
          } 
       }else 
          
$fin = ''; 
       if ((int)
$ent === 0) return 'Cero ' . $fin; 
       
$tex = ''; 
       
$sub = 0; 
       
$mils = 0; 
       
$neutro = false; 
       while ( (
$num = substr($ent, -3)) != '   ') { 
          
$ent = substr($ent, 0, -3); 
          if (++
$sub < 3 and $fem) { 
             
$matuni[1] = 'una'; 
             
$subcent = 'as'; 
          }else{ 
             
$matuni[1] = $neutro ? 'un' : 'uno'; 
             
$subcent = 'os'; 
          } 
          
$t = ''; 
          
$n2 = substr($num, 1); 
          if (
$n2 == '00') { 
          }elseif (
$n2 < 21) 
             
$t = ' ' . $matuni[(int)$n2]; 
          elseif (
$n2 < 30) { 
             
$n3 = $num[2]; 
             if (
$n3 != 0) $t = 'i' . $matuni[$n3]; 
             
$n2 = $num[1]; 
             
$t = ' ' . $matdec[$n2] . $t; 
          }else{ 
             
$n3 = $num[2]; 
             if (
$n3 != 0) $t = ' y ' . $matuni[$n3]; 
             
$n2 = $num[1]; 
             
$t = ' ' . $matdec[$n2] . $t; 
          } 
          
$n = $num[0]; 
          if (
$n == 1) { 
             
$t = ' ciento' . $t; 
          }elseif (
$n == 5){ 
             
$t = ' ' . $matunisub[$n] . 'ient' . $subcent . $t; 
          }elseif (
$n != 0){ 
             
$t = ' ' . $matunisub[$n] . 'cient' . $subcent . $t; 
          } 
          if (
$sub == 1) { 
          }elseif (! isset(
$matsub[$sub])) { 
             if (
$num == 1) { 
                
$t = ' Un mil'; 
             }elseif (
$num > 1){ 
                
$t .= ' mil'; 
             } 
          }elseif (
$num == 1) { 
             
$t .= ' ' . $matsub[$sub] . '?n'; 
          }elseif (
$num > 1){ 
             
$t .= ' ' . $matsub[$sub] . 'ones'; 
          }   
          if (
$num == '000') $mils ++; 
          elseif (
$mils != 0) { 
             if (isset(
$matmil[$sub])) $t .= ' ' . $matmil[$sub]; 
             
$mils = 0; 
          } 
          
$neutro = true; 
          
$tex = $t . $tex; 
       } 
       
$tex = $neg . substr($tex, 1) . $fin; 
    
    
/// Poner datos para cadena final   
       
       
       
       
return strtoupper ($tex); 
       
    } 

    function 
monedatexto($cantidad = ''){
    
       
$separar = explode('.',$cantidad);
       
       
       
$texto = '**** ';
       
$texto .=  $this->num2letras($separar[0]);
       
$texto .=  ' pesos ';
       
$texto .=  ' '.$separar[1].'/100 M.N. ****';
       
       return 
strtoupper ($texto);
    
    }
}

?> 
Codigo de factura.php

Código PHP:
//define('FPDF_FONTPATH','/home/www/font/');
require('pdf/fpdf.php');
$pdf=new FPDF();
$pdf->AddPage();

$pdf->SetFont('Arial','B',7);

require(
"functions.inc.php");
$precio = new precio();
$texto = $precio->monedatexto("2000.4");
$pdf->Text(10,45, $texto); //$texto
$pdf->Output(); 

Error:

Warning: Cannot modify header information - headers already sent by (output started at /home/ts/public_html/facturacion/include/functions.inc.php:1) in /home/ts/public_html/facturacion/pdf/fpdf.php on line 1017
FPDF error: Some data has already been output, can't send PDF file


Cabe mencionar que si pongo todo en una misma pagina funciona correctamente asi mismo ya intente con require() y me da lo mismo obio no lo pongo todo en el mismo por que la pagina se volveria pesada larga y poco estructurada aver si alguien me puede auxiliar

Salu2 desde México .*.

S:.F:.U:.