PHP - php mvc a pdf

 
Vista:
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac (35 intervenciones) el 03/04/2020 03:25:14
numero

Hola dejo algo si me pueden ayudar, intento recuperar un valor desde otro archivo, en la foto se observa la vista y el valor que esta resaltado es el que quiero capturar para enviarlo al hacer clic en el boton generar pdf a un archivo .php para hacer el pdf.

la vista:
1
2
3
4
5
6
7
8
<!-- START BLOCK : blockDetalle -->
<tr>
  <td>{numDetFac}</td>  //este es el que quiero llevar para hacer el select 426
  <td>{fecha}</td>
  <td>{producto}</td>
 
</tr>
<!-- END BLOCK : blockDetalle -->


el boton tiene este codigo:
1
2
3
4
5
<a href="templates/detalles.php" target="_blank">
    <span class="btn btn-md btn-primary">
      Generar PDF
    </span>
</a>

y el archivo detalles.php es el que sale como pdf tiene este codigo
1
2
3
4
5
$numero=423; // puse 423 para probar y genera el pdf, aca tengo que reemplazar para tomar el valor que busco
 
 
	$query="SELECT * FROM detalles WHERE
		det_numero = $numero....;and


Alguien conoce alguna caracteristica de php para traer el valor a la variable $numero?
seria lo ideal para hacer una prueba. Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 03/04/2020 08:23:42
Hola.

Si no tienes acceso a la variable {numDetFac} sólo puedes obtener ese valor por JavaScript, no por PHP.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac (35 intervenciones) el 03/04/2020 22:23:22
Gracias Julio, sigo intentando con eso, aviso si resuelvo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 03:07:05
cambie la forma ,, ahora estoy generando el pdf desde el controller con la siguiente funcion. lo que me pasa es que pasando un var dump sale tal cual lo necesito y en esta parte como esta genera el pdf pero no inserta el contenido de $html1 y si le saco $mpdf->writeHTML($html1); tambien lo genera, pero no logro insertar el contenido de $html1

1
2
3
4
5
6
7
8
9
10
11
function generarPdf()
 
 
			$mpdf = new mPDF('c' , 'A4'); // bien
			$css=file_get_contents('C:/correcto.css'); //bien
			$mpdf->writeHTML($css , 1); // bien
			$mpdf->writeHTML($html1);	// si aca pongo  $mpdf->writeHTML(preg_replace($html1)); no marca error pero no inserta
			$mpdf->Output('reporte.pdf','I'); // bien
 
 
		}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 07:55:49
¿Y $html1 es...?

No dices qué es, dónde se define, cómo lo insertas dentro de la función...

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 15:32:38
esto por ej:
1
2
3
4
5
6
7
8
9
$html1 .='<header class="clearfix">
					<h1>Remito</h1>
						<table class="table table-striped table-bordered table-hover table-condensed">
						<tr>
							<th align="left" width="0%" class="bg-primary">Fecha</th>
							<th align="left" width="0%" class="bg-primary">Producto</th>
						</tr>
					</thead>
					<tbody>';
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 15:35:08
Ya, pero no me refería a eso, me expliqué mal. Quiero decir que no veo en esa fórmula que le estés pasando esa variable en ningún momento.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 15:47:42
sisi estas son partes de la funcion, pasa que pense que alguien podia responder como levantar el $html1
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 16:33:20
¿Disculpa? No te he entendido. ¿Puedes poner la función con el código al completo?

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 16:41:44
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
function generarPdf()
{
 
        //$resultado = false;
        require_once 'templates\pdf\mPDF.php';
        //require_once ("templates/pdf/mpdf/mpdf.php");
        //require_once "php/detalles.php";
 
        global $db; //conexion
 
        $numero = $_GET["numFactura"];
 
        $safesqlParametros = array($numero);
 
        $safesqlQuery = "SELECT * FROM detalle WHERE
            det_numFactura = '%s'";
 
        $safesql = new SafeSQL_MySQL($db->dbConn);
        $query = $safesql->query($safesqlQuery, $safesqlParametros);
        $resultado = $db->select($query);
 
        //$prepare=$db->prepare($query);
        //$query->execute();
        //$resultSets=$prepare->get_result();
        //while($resultado[]=$resultSets->fetch_array());
        //$resultSets->close();
        //$prepare->close();
        //$db->close();
 
        $html1 .='<header class="clearfix">
            <h1>Remito</h1>
                <table class="table table-striped table-bordered table-hover table-condensed">
                <tr class="bg-primary">
                    <th align="left" width="0%" class="bg-primary">N° de Factura</th>
                    <th align="left" width="0%" class="bg-primary">Fecha</th>
                    <th align="left" width="0%" class="bg-primary">Producto</th>
                    <th align="left" width="0%" class="bg-primary">Cantidad</th>
                    <th align="left" width="0%" class="bg-primary">Costo</th>
                    <th align="left" width="0%" class="bg-primary">Importe</th>
                </tr>
            </thead>
            <tbody>';
/*
        $totaluni=0;
        $total=0;
        foreach ($resultado as $resu){
            $html1 .='<tr>
            <td align="center" class="numero">' .$resu['det_numFactura'].'</td>
            <td align="center" class="fecha">'.$resu['det_time'].'</td>
            <td align="center" class="importe">'.$totaluni=$resu['det_precio'] * $resu['det_cantidad'].'</td>
                '.$total=$total+$totaluni.'
            </tr>';
        }
        if($resultado)
        {
            $html1 .= '<tr>
            <td></td>
            <td></td>
            <td></td>
            <td></td>
            <td>Total:</td>
            <td align="center" class="total">'.$total.'</td>
            </tr>';
        }
    $html1 .='<tr>
        <td colspan="8" class="grand total"></td>
        <td class="grand total"></td>
        </tr>
        </tbody>
        </table>
        <div id="notices">
        <div>Observación:</div>
        </div>
        </main>';
        //var_dump($html1); //sale bien
*/
    $mpdf = new mPDF('c' , 'A4'); // bien
    $css=file_get_contents( 'templates/plantilla/css/style.css');
    $mpdf->writeHTML($css , 1);
    $mpdf->writeHTML(preg_replace($html1));
    $mpdf->Output('reporte.pdf','I'); // bien
    //exit;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 16:49:34
Ok, varias cositas:

1
2
3
4
5
6
7
8
9
10
11
12
13
$html1 .='<header class="clearfix">
					<h1>Remito</h1>
						<table class="table table-striped table-bordered table-hover table-condensed">
						<tr class="bg-primary">
							<th align="left" width="0%" class="bg-primary">N° de Factura</th>
							<th align="left" width="0%" class="bg-primary">Fecha</th>
							<th align="left" width="0%" class="bg-primary">Producto</th>
							<th align="left" width="0%" class="bg-primary">Cantidad</th>
							<th align="left" width="0%" class="bg-primary">Costo</th>
							<th align="left" width="0%" class="bg-primary">Importe</th>
						</tr>
					</thead>
					<tbody>';

Antes de esto (que es la primera definición de $html1), coloca lo siguiente:

1
$html1 = "";

Y, cuidado, que estás cerrando </thead> pero no veo que lo estés abriendo en ningún sitio. En la línea de después de <table> debes colocar <thead>.

Después, ¿todo lo demás lo tienes como comentario por algún motivo? Como está en comentario, no se va a ejecutar (aparte de que hay cosas extrañas por ahí, pero primero comprueba que se te crea el $html1 bien).

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 17:06:35
si, lo comentado no se ejecuta y lo tengo de guia porque empece con el documento que trae el generador de mpdf a modificar y adaptar a lo que tengo en mvc.
agregue $html1 = ""; y <thead>

sigue generando el pdf pero sin contenido, aparece la pantalla en blanco.

si le saco el preg_replace a esta linea
1
$mpdf->writeHTML(preg_replace($html1));

asi:
1
$mpdf->writeHTML($html1);

aparece este error:
Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in
templates\pdf\includes\functions.php on line 97

Warning: Cannot modify header information - headers already sent by (output started at
templates\pdf\includes\functions.php:97)
in templates\pdf\mpdf.php on line 7447

Warning: Cannot modify header information - headers already sent by (output started at
templates\pdf\includes\functions.php:97) in templates\pdf\mpdf.php on line 1736
mPDF error: Some data has already been output to browser, can't send PDF file
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 17:10:49
Una pregunta, ¿por qué preg_replace($html1)? Prueba sin preg_replace a ver.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 75
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por mac dev (35 intervenciones) el 27/04/2020 17:41:04
aun asi le ponga un "hola mundo" al html1 no lo levanta. esa es la cuestion.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php mvc a pdf

Publicado por Julio (830 intervenciones) el 27/04/2020 17:44:54
¿Quitándole el preg_replace también? Pues entonces ya parece algún error en el mPDF y no sabría decirte desde aquí.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar