hallo
ich muss eine art kreuztabelle in php/mysql erstellen. links, vertikal sind die produkte oben, horizontal sind die datums. dann wird angezeigt, welche daten besetzt sind und welche nicht.
ich hab das jetzt mal mit dem folgenden code gemacht. nun meine frage: ist das so einigermassen sinnvoll oder gibts da was besseres in bezug auf performance, etc.?
bin für tipps und hinweise, konstruktive kritik dankbar!
ich muss eine art kreuztabelle in php/mysql erstellen. links, vertikal sind die produkte oben, horizontal sind die datums. dann wird angezeigt, welche daten besetzt sind und welche nicht.
ich hab das jetzt mal mit dem folgenden code gemacht. nun meine frage: ist das so einigermassen sinnvoll oder gibts da was besseres in bezug auf performance, etc.?
bin für tipps und hinweise, konstruktive kritik dankbar!
PHP:
<?php
$startdate = date('Y-m-d');
$anzahl_tage = '+14 days'; //STANDARD WENN NICHTS GEWÄHLT WIRD
#Query Produkt
$sql=mysql_query("SELECT
p_id,produkt,pin_id FROM res_produkt where pin = 'zu' ");
echo mysql_error();
?>
<table style="width:100%" cellpadding="3" cellspacing="1">
<tr>
<td bgcolor="#F2F2F2">
<?php
#Nochmal Datums-for-Schleife für die Darstellung der Übersicht
for($today=$date=strtotime($startdate);$date<=strtotime($anzahl_tage,$today);$date=strtotime('+1 days',$date))
{
?></td>
<td bgcolor="#F2F2F2">
<?php echo date('d.m.Y',$date);?></td>
<?php
}
?>
</tr>
<?
while(list($p_id,$produkt,$zeitungsID)=mysql_fetch_row($sql))
{
?>
<tr>
<td bgcolor="#F2F2F2">
<?php echo $produkt;?> </td>
<?php
#Nochmal Datums-for-Schleife für die Darstellung der Übersicht
for($today=$date=strtotime($startdate);$date<=strtotime($anzahl_tage,$today);$date=strtotime('+1 days',$date))
{
$datumDB = date('Y-m-d',$date);
#Query für den Belegungsplan
#Query für den Belegungsplan
$termine=mysql_query("SELECT
a.d_id,
a.datum,
a.benutzer,
a.bezeichnung,
a.z_id,
b.p_id,
b.produkt,
c.zeitung
FROM
res_daten as a,
res_produkt as b,
res_zeitung as c
WHERE
a.prod_id = b.p_id
AND
a.z_id = c.zeitungs_id
AND
a.datum = '$datumDB'
AND
b.produkt = '$produkt'
AND
a.z_id = '$zeitungsID'
")or die(mysql_error());
#########
$row=mysql_fetch_assoc($termine);
?>
<td bgcolor="#F2F2F2"><?php if($datumDB == $row['datum']){echo 'ja';} ?></td>
<?
}
}
?>
</tr>
</table>