PHP - Error al hacer cálculos automáticos con fpdf y php

 
Vista:
sin imagen de perfil
Val: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por Hannss (7 intervenciones) el 25/01/2017 00:11:22
Buen Día, tengo un problema.
Estoy trabajando con fpdf con conexión a base de datos y un formulario (php), el problema es cuándo trato de realizar un cálculo, me resulta un valor que no tiene ni pies ni cabeza, el código del fpdf que hace el cálculo es éste ( ['precio'] y ['ganacia'] son columnas de la bd ):

1
2
3
4
5
6
7
8
$costo = (float)['precio'];
$ganancia = (float)['ganancia'];
 
$PrecioVentaCLP = (((($costo + 2) * 1.54) * 1.02) * $ganancia) * 690;
 
$pdf->SetFont( Courier , , 7);
$pdf->SetXY(1, 1);
$pdf->MultiCell(40, 7, utf8_decode($PrecioVentaCLP), 0, J );

También he probado con este:

1
2
3
4
5
6
7
8
$costo = ['precio'];
$ganancia = ['ganancia'];
 
$PrecioVentaCLP = (((((float)$costo + 2) * 1.54) * 1.02) * (float)$ganancia) * 690;
 
$pdf->SetFont( Courier , , 7);
$pdf->SetXY(1, 1);
$pdf->MultiCell(40, 7, utf8_decode($PrecioVentaCLP), 0, J );

Siempre me da como resultado " 3251.556 " (sin las comillas), en lo cuál no entiendo de dónde sale, el objetivo es que dependiendo el registro que consulte se calcule un precio automáticamente en el pdf que se genera.

El resto de los registros que obtiene directamente de la base de datos según el valor clave que se consultó, me los muestra sin problema, pero este que es calculado no funciona... ¿Dónde está el error o cómo lo soluciono?

No sé si me entienden, agradezco cualquier ayuda ya que me urge solucionar esto.

Ya busqué y no encuentro nada de cómo solucionarlo... :/
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por xve (6935 intervenciones) el 25/01/2017 11:54:17
Hola Hanns, esto esta erroneo!!!

1
$costo = ['precio'];
que es ['precio']?? te falta indicar la variable a la que pertenece esa clave del array, no?
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: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por Hannss (7 intervenciones) el 25/01/2017 16:11:16
Probé pero me muestra error, ¿estará bien de esta manera?:

1
2
3
4
5
6
7
8
9
10
11
12
$modelo = new myDBC();
	$precios = $modelo->consultaprecios($modeloprecio);
	$func_precio = $modelo->consultaprecios($modeloprecio);
 
$costo = $func_precio['precio'];
$ganancia = $func_precio['ganancia'];
 
$PrecioVentaCLP = (((((float)$costo + 2) * 1.54) * 1.02) * (float)$ganancia) * 690;
 
$pdf->SetFont('Courier','', 7);
$pdf->SetXY(1, 1);
$pdf->MultiCell(40, 7, utf8_decode($PrecioVentaCLP), 0, 'J');

Este es un fragmento del archivo myDBC.php que usé...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
public function consultaprecios($modelo)
    {
        $q = "select nombre, modelo_int,
					 capacidad, precio,
					 ganancia, peso
					 from productos_pnd
                     where modelo_int = '$modelo'";
 
        $result = $this->mysqli->query($q);
        $valores = array();
        if( $result->num_rows == 0)
        {
            echo'<script type="text/javascript">
              alert("Ha ocurrido un error interno, por favor intente nuevamente.")
            </script>';
        }
      else{
            while($row = mysqli_fetch_assoc($result))
            {
                array_push($valores, $row);
            }
          }
        return $valores;
    }

De igual forma agradesco la ayuda :)
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por xve (6935 intervenciones) el 25/01/2017 18:27:56
Hola Hannss, pero que error te da?

Que contenido tiene la variable: $func_precio?
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: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por Hannss (7 intervenciones) el 25/01/2017 19:17:54
Este error:

SCREAM: Error suppression ignored for
( ! ) Notice: Undefined index: precio in Cotizacion.php on line 23
Call Stack
# Time Memory Function Location
1 0.0522 264384 {main}( ) ..\Cotizacion.php:0

( ! ) SCREAM: Error suppression ignored for
( ! ) Notice: Undefined index: ganancia in Cotizacion.php on line 24
Call Stack
# Time Memory Function Location
1 0.0522 264384 {main}( ) ..\Cotizacion.php:0
FPDF error: Some data has already been output, can't send PDF file

$func_precio y $precio hacen lo mismo, me obtienen los datos de la bd, al menos para que los muestre no tengo problema...
1
2
$precios = $modelo->consultaprecios($modeloprecio);
	$func_precio = $modelo->consultaprecios($modeloprecio);

Este es el que me muestra los datos en el archivo fpdf según $precios,
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
function cabecera($cabecera){
		$this->SetXY(15,105);
		$this->SetFont('Arial','B',15);
		foreach($cabecera as $columna)
		{
	    	$this->Cell(1,1,$columna,1, 1 , 'L' ) ;
    	}
    }
 
    function precios($precios){
 
		$this->SetXY(15,25);
		$this->SetFont('Arial','B',16);
		foreach ($precios as $columna)
		{
			$this->Cell(186,7,utf8_decode($columna['nombre']),'',2,'C' );
		}
		$this->SetXY(15,31);
		$this->SetFont('Arial','',14);
		foreach ($precios as $columna)
		{
			$this->Cell(186,7,utf8_decode($columna['modelo_int']),'',2,'C' );
		}
		$this->SetXY(30,60);
		$this->SetFont('Arial','B',12);
		foreach ($precios as $columna)
		{
			$this->Cell(23,8,utf8_decode($columna['capacidad']),'T',2,'C' );
		}
		$this->SetXY(35,60);
		$this->SetFont('Arial','',12);
		foreach ($precios as $columna)
		{
			$this->Cell(161,8,utf8_decode($columna['precio']),'T',2,'L' );
		}
    }
 
    function tabla($cabecera,$precios){
		$this->cabecera ($cabecera) ;
		$this->precios($precios);
    }

Llevo poco tiempo en esto por lo que de pronto me ahogo en un pequeño vaso de agua
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 xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por xve (6935 intervenciones) el 25/01/2017 20:31:35
En esta notificación:
Notice: Undefined index: precio in Cotizacion.php on line 23

Te esta diciendo que estas intentado utilizar un indice de la variable (array) precio que no existe!!!
Cual es la linea 23 del archivo Cotizacion.php?
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: 12
Ha aumentado su posición en 15 puestos en PHP (en relación al último mes)
Gráfica de PHP

Error al hacer cálculos automáticos con fpdf y php

Publicado por Hannss (7 intervenciones) el 25/01/2017 22:24:47
Las líneas 23 y 24 son

1
2
$costo = $func_precio['precio'];
$ganancia = $func_precio['ganancia'];

Ya sé que el error dice que no existen, pero en para mostrarme el registro sin cálculo no pone problemas
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