Foros del Web » Programando para Internet » PHP »

Problema con impresion en PHP CSS

Estas en el tema de Problema con impresion en PHP CSS en el foro de PHP en Foros del Web. Hola a todos lo que leen este tema, y de antemano agradezco el interés por compartir el conocimiento. Bien al grano, estoy con un pequeño ...
  #1 (permalink)  
Antiguo 20/02/2011, 19:27
 
Fecha de Ingreso: agosto-2010
Ubicación: Lima, Los Olivos
Mensajes: 7
Antigüedad: 14 años, 3 meses
Puntos: 0
Problema con impresion en PHP CSS

Hola a todos lo que leen este tema, y de antemano agradezco el interés por compartir el conocimiento.
Bien al grano, estoy con un pequeño problema; a continuación doy detalle de ello:

Tengo hecho un módulo de impresiones de boletas mecanizadas, es decir preformateadas, ya esta impreso todo el diseño,la serie y las grillas, también ya esta precortado el papel, se debe generar con un patrón de 3 horizontales por 4 verticales, un total de 12 boletas por hoja en papel continuo de 210mm * 305mm, con una impresora EPSON dfx9000.
Lo que hace el módulo es generar los números consecutivos, tomar clientes al azar de una base de datos que -pertenecen a una determinada serie- y genera para todas las boletas la misma descripción y monto.

Aca el código

Formulario de toma de datos: (se toma la serie que se desea imprimir, la fecha y la cantidad de boletas.)

Código PHP:
<?php include_once 'extra/conexion.php';?>
<html>  
<head>
    <title>Impresiones Mecanizadas, Formulario</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" href="css/estilo.css" type="text/css">
        <script src="js/jquery.min.js" type="text/javascript"></script>
        <script type="text/javascript">
$(document).ready(function(){                             
    $("#serie").change(function(){
        $.post("cargaultimafac.php",{ id:$(this).val() },function(data){$("#fini").val(data);})                
    });                
})
</script>
</head>

<body>        
<div id="container">
    <div id="header">
        <span id="logo">Alfagas</span><br>
        <span id="sublogo">Líderes en Calidad</span>
    </div>
<form name="frmMec" action="imprimir.php" method="post">
<fieldset>
    <legend>Fecha</legend>
    <label for="mes">Mes: <select name="mes">
                                <option value="01">Enero</option>
                                <option value="02">Febrero</option>
                                <option value="03">Marzo</option>
                                <option value="04">Abril</option>
                                <option value="05">Mayo</option>
                                <option value="06">Junio</option>
                                <option value="07">Julio</option>
                                <option value="08">Agosto</option>
                                <option value="09">Setiembre</option>
                                <option value="10">Octubre</option>
                                <option value="11">Noviembre</option>
                                <option value="12">Diciembre</option>
                             </select>
    </label><br/>
    <label for="ano">Año: <input name="ano" size="4" maxlength="4" value="<?= date("Y")?>"></label>
</fieldset>
    
<fieldset>
    <legend>Datos de Impresión</legend>        
        <label for="serie">Serie: <select name="serie" id="serie">
                <option value= 0 >Seleccione</option>
                <?php
                    $rs 
mysql_query("select * from serie");
                    while(
$row mysql_fetch_array($rs)){
                      
?>
                <option value="<?=$row['cod_serie']?>"><?=$row['cod_serie']?></option>
                <?
                    
}                   
                
?>
            </select></label> <br/>
            <label for="facini">Factura Inicial: <input name="fini" id="fini" ></label><br/>
            <label for="cantidad">Cantidad: <input name="cantidad" id="cantidad" size="4"></label><br/>
</fieldset>
    
        <input type="submit" name="enviar">
        <input type="button" name="reiniciar" id="reiniciar" value="Reinicializar Serie">
  
</form>
</div>
</body>
</html>

y esta es la página que recibe los datos:

Código PHP:
<?php
include_once 'extra/conexion.php';
$mes $_POST['mes'];
$ano $_POST['ano'];
$fini $_POST['fini'];
$serie $_POST['serie'];
$cantidad $_POST['cantidad'];
?>
<html>
    <head>
        <title>Imprimir boletas Mecanizadas</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
        <link rel="stylesheet" href="css/estilo.css" type="text/css">
        <script src="js/jquery.min.js" type="text/javascript"></script>
    </head>
    <body>
        <div id="contenido" class="sinespacio">
            <table id="master" cellpadding="0" cellspacing="0">
                <tr>
            <?
                
for($i=1;$i<$cantidad+1;$i++){
           
$listac mysql_query("select * from cliente where cod_serie = $serie ");
                         
$n mysql_num_rows($listac);
                        
$num ceil((rand(0, ($n-1))));
                        
$rs mysql_query("select * from cliente where cod_serie = $serie limit $num ,1");
                        
$fila mysql_fetch_array($rs);
                    
?>
            <td>
            <div id="main">
                <span id="numero"><?=$fini;?></span>
                <span id="nombres"><?=$fila['nombres'];?></span>
                <span id="fecha"><?="25/".$mes."/".$ano?></span>
                <span id="cantidadu">1</span><span id="descripcion">Cilin 10 Kgs.</span><span id="preciounitario"><?php
                            $costors 
mysql_query("select * from serie where cod_serie=$serie");
                            
$fcosto mysql_fetch_array($costors);
                            echo 
$fcosto['precio'];
                            
?></span><span id="importe"><?=$fcosto['precio']?></span>
                <span id="importetotal"><?=$fcosto['precio']?></span>
            </div>
            </td>
            <?
            $fini
++;
            if(
$i%3==&& $i != 0){
                echo 
"</tr>";
                echo 
"<tr>";
            }
            }
            
?>
            </table>
        </div>
    </body>
</html>

De hecho he usado solo estilos para impresion , por eso solo puse <link.....media=print..>

Y aca el CSS:

Código CSS:
Ver original
  1. body{padding: 0px;margin: 0px;}
  2. #container{width:300px;padding: 200px 0px 0px 500px;font-family: 'Arial Narrow', sans-serif;}
  3. #header{padding:0px 0px 30px 0px;}
  4. #header span#logo{font-size: 5em;font-family: "Trebuchet MS"; font-style: italic;color: #666666}
  5. #header span#sublogo{font-size: 0.7em;font-family: "Trebuchet MS"; text-transform: uppercase;}
  6.  
  7. /*Pagina de Impresión*/
  8.  
  9. .sinespacio{top: 0;left: 0; padding: 0px;margin: 0px;}
  10. #contenido{display: block;}
  11. /*
  12. #contenido table#cabecera{vertical-align: top; width: 270px;margin-top: 10px; font-size:inherit;}
  13. #contenido table#cuerpo{vertical-align: bottom; width: 270px;margin-top: 3px; font-size:inherit;}
  14. */
  15. #contenido table#master{padding: 0px; margin: 0px;}
  16. #contenido div#main{border: 0px solid #333333; width: 7.5cm; height: 75mm; padding: 0px; font-size:8pt ; font-family: 'Courier New',Courier,monospace}
  17. #numero{position:absolute; margin: 1.5cm 0cm 0cm 5cm;}
  18. #nombres{position:absolute; margin: 2.3cm 0cm 0cm 1.5cm; }
  19. #fecha{position:absolute; margin: 3.2cm 0cm 0cm 5.1cm; }
  20. #cantidadu{position:absolute; margin: 4.4cm 0cm 0cm 0.3cm; }
  21. #descripcion{position:absolute; margin: 4.4cm 0cm 0cm 1.7cm; }
  22. #preciounitario{position:absolute; margin: 4.4cm 0cm 0cm 4.7cm; }
  23. #importe{position:absolute; margin: 4.4cm 0cm 0cm 6.1cm; }
  24. #importetotal{position:absolute; margin: 6cm 0cm 0cm 6.1cm; }


ACÁ EL PROBLEMA:

he tenido muchos problemas con los navegadores, ya que el requerimiento era de no imprimir ni el titulo ni la fecha ni la url, es por ello que decidí usar FireFox para imprimir las boletas, pero el hecho es que FireFox solo me reconoce la primera hoja que genera el módulo, las otras miles de hojas que genera las toma como en blanco, me doy cuenta de eso por que FF tiene la opción de Vista Preliminar y por que claro ya mande a imprimir con la Impresora de Matriz y nada, POR FAVOR AGRADECERÍA ALCANCES SOBRE ESTE TEMA!!!

A continuación les dejo un link con el módulo andando.

[URL="http://www.drywallperu.com/impmec"]http://www.drywallperu.com/impmec[/URL]

Si te animas a usarlo para rastrear el problema, selecciona solo la serie 31, pues es la única que tiene clientes asignados, por motivos de prueba.

Muchas Gracias por leer mi testamento de Post.!!
y espero tener alguna solución al respecto!

Etiquetas: css, firefox, impresion, imprimir, previa, navegadores, vistas
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:05.