Veréis, estoy haciendo una web que tiene que mostrar una tabla con los meses como cabecera y los días del mes en la primera columna (del día 1 al 31) para confeccionar la lista de precios de un grupo en función del día que se le contrate.
He conseguido que me muestre la tabla sin problemas, mediante este script
Código PHP:
<?php
include ("assets/php/seguridad.php");
include ("assets/php/conn.php");
include ("assets/php/classes/class.ezpdf.php");
function cambiaf_a_mysql ($fecha)
{
ereg ("([0-9]{1,2})/([0-9]{1,2})/([0-9]{2,4})", $fecha, $mifecha);
$lafecha = $mifecha[3] . "/" . $mifecha[2] . "/" . $mifecha[1];
return $lafecha;
}
function cambiaf_a_normal($fecha)
{
ereg ("([0-9]{2,4})-([0-9]{1,2})-([0-9]{1,2})", $fecha, $mifecha);
$lafecha = $mifecha[3] . "/" . $mifecha[2] . "/" . $mifecha[1];
return $lafecha;
}
$fecha1 = cambiaf_a_mysql ($_GET["startdate1"]);
$fecha2 = cambiaf_a_mysql ($_GET["startdate2"]);
$pdf =& new Cezpdf('a4');
$sel_1 = "SELECT nombre FROM productos WHERE id_producto='" . $_GET["id_producto"] . "'";
$que_1 = mysql_query ($sel_aux_1, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $sel_1 . '<br />');
$arr_1 = mysql_fetch_array ($que_1);
$pdf->selectFont('assets/php/classes/fonts/Courier.afm');
$datacreator = array (
'Title' => 'Estadillo de ' . $arr_1["nombre"],
'Author' => 'Vicente Producciones',
'Subject' => 'PDF con Tablas',
'Creator' => '[email protected]',
'Producer' => 'http://www.vicenteproducciones.com'
);
$pdf->addInfo($datacreator);
$data = array ();
for ($i = 0; $i < 31; $i++)
{
for ($j = 0; $j < 13; $j++)
{
if ($j == 0)
$data[$i]['mes0'] = $i + 1;
else
{
$mts = mktime (0,0,0,$j,$i+1,date("Y"));
$act_aux_day = getdate ($mts);
$ctrl_var = $act_aux_day["weekday"];
$sel_2 = "SELECT " . $i . "_" . ($j - 1) . " AS campo FROM estadillo WHERE id_producto='" . $_GET["id_producto"] . "'";
$que_2 = mysql_query ($sel_2, $dbh) or die ('I cannot execute the query because: ' . mysql_error . '<br />And the query is: ' . $sel_2 . '<br />');
$arr_2 = mysql_fetch_array ($que_2);
if ($arr_2["campo"] == "Ocupado")
{
if ($ctrl_var == "Sunday")
$data[$i]['mes' . $j] = "<b>O</b>";
else
$data[$i]['mes' . $j] = "O";
}
else if ($arr_2["campo"] == "Reservado")
{
if ($ctrl_var == "Sunday")
$data[$i]['mes' . $j] = "<b>R</b>";
else
$data[$i]['mes' . $j] = "R";
}
else
{
if ($ctrl_var == "Sunday")
$data[$i]['mes' . $j] = "<b>" . $arr_2["campo"] . "</b>";
else
$data[$i]['mes' . $j] = $arr_2["campo"];
}
}
}
}
$titles = array(
'mes0' => '<b>D\M</b>',
'mes1' => '<b>Ene.</b>',
'mes2' => '<b>Feb.</b>',
'mes3' => '<b>Mar.</b>',
'mes4' => '<b>Abr.</b>',
'mes5' => '<b>May.</b>',
'mes6' => '<b>Jun.</b>',
'mes7' => '<b>Jul.</b>',
'mes8' => '<b>Ago.</b>',
'mes9' => '<b>Sep.</b>',
'mes10' => '<b>Oct.</b>',
'mes11' => '<b>Nov.</b>',
'mes12' => '<b>Dic.</b>'
);
$pdf->ezText("<b>Tarifas de " . $arr_1["nombre"] . "</b>\n",16);
$pdf->ezTable($data,$titles,'',array('xPos'=>'center','width'=>530,'cols'=>array('num'=>array('justification'=>'center'))));
$pdf->ezText("\n\n\n",10);
$sel_3 = "SELECT productos.componentes, lectura_escenario.nombre FROM productos, lectura_escenario WHERE id_producto='" . $_GET["id_producto"] . "' AND productos.id_lectura_escenario = lectura_escenario.id_lectura_escenario";
$que_3 = mysql_query ($sel_3, $dbh) or die ('I cannot execute the query because: ' . mysql_error () . '<br />And the query is: ' . $sel_3 . '<br />');
$arr_3 = mysql_fetch_array ($que_3);
$pdf->ezText("<b>Componentes:</b> " . $arr_3["componentes"], 10);
$pdf->ezText("<b>Escenario:</b> " . $arr_3["nombre"] . "\n\n", 10);
$pdf->ezText("\n",10);
$pdf->ezText("<b>O:</b> Ocupado", 10);
$pdf->ezText("<b>R:</b> Reservado\n\n", 10);
$pdf->ezStream();
En otras palabras, lo que busco es sustituir estas líneas:
Código PHP:
$mts = mktime (0,0,0,$j,$i+1,date("Y"));
$act_aux_day = getdate ($mts);
$ctrl_var = $act_aux_day["weekday"];
$sel_2 = "SELECT " . $i . "_" . ($j - 1) . " AS campo FROM estadillo WHERE id_producto='" . $_GET["id_producto"] . "'";
$que_2 = mysql_query ($sel_2, $dbh) or die ('I cannot execute the query because: ' . mysql_error . '<br />And the query is: ' . $sel_2 . '<br />');
$arr_2 = mysql_fetch_array ($que_2);
if ($arr_2["campo"] == "Ocupado")
{
if ($ctrl_var == "Sunday")
//Quiero cambiar esta negrita por color rojo
$data[$i]['mes' . $j] = "<b>O</b>";
else
$data[$i]['mes' . $j] = "O";
}
else if ($arr_2["campo"] == "Reservado")
{
if ($ctrl_var == "Sunday")
//Quiero cambiar esta negrita por color rojo
$data[$i]['mes' . $j] = "<b>R</b>";
else
$data[$i]['mes' . $j] = "R";
}
else
{
if ($ctrl_var == "Sunday")
//Quiero cambiar esta negrita por color rojo
$data[$i]['mes' . $j] = "<b>" . $arr_2["campo"] . "</b>";
else
$data[$i]['mes' . $j] = $arr_2["campo"];
}
Código PHP:
$pdf->ezTable($data,$titles,'',array('xPos'=>'center','width'=>530,'cols'=>array('num'=>array('justification'=>'center'))));
¿Alguien sabría echarme una mano?
Muchas gracias a todos y un saludo.