Beste PHP-ers,

Ik ben bezig met een systeem om roosterwijzigingen weer te geven.
De ene locatie wil ze horizontaal, en de andere wil ze verticaal.

De code voor horizontaal is dit:
foreach ($wijzigingen as $W) {

			//Als de datum (niet de tijd) afwijkt van de vorige moet de pagina beƫindigd worden
			if ($lastdate<>@date('d-m-Y',$W[count($W)-1]) and $lastdate!==null and $i>0) EndPage(); // AND $i>0, want als $i nul is dan is de foreach niet meer langsgeweest en is de pagina dus niet gemaakt. Je voorkomt hiermee notices en een lege pagina

			//Stel lastdate in
			$lastdate=@date('d-m-Y',$W[count($W)-1]);
			
				//Als het wijziging 0 is moet de pagina zelf gegenereerd worden
				if ($i == 0) {
					$_SESSION['pages'][$p]=GetTitle(htmlentities($settings[0]));
					$_SESSION['pages'][$p].="\n<table class=\"content\">\n";
					$_SESSION['pages'][$p].="<tr>\n<td><h2>".htmlentities(ucfirst(GetDateText($W[count($W)-1])))."</h2></td>\n</tr><tr>\n<td>\n<table style=\"width: 100%; border-spacing: 0; \">\n";

					$_SESSION['pages'][$p].="<tr class=\"roosterwijzigingkolommen\" style=\"font-weight: bold;\">
					<td style=\"text-align: center;\">Klas</td>
					<td style=\"text-align: center;\">Uur</td>
					<td style=\"text-align: center;\">Was</td>
					<td style=\"text-align: center;\">Wordt</td>
					<td style=\"text-align: center;\">Docent</td>
					<td style=\"text-align: center;\">Waar</td>
					<td style=\"text-align: center; width: 25%;\">Opmerking</td>
					</tr>";
				} //Einde if i == 0

				//Verwijder het laatste element (de datum), zodat het niet als een lang getal op het scherm komt:
				array_pop($W);

				//Nu de wijziging toevoegen:
					if ($i % 2) { // Als de wijziging oneven is, krijgt deze table row een achtergrondkleurtje.
						$class = 'roosterwijziging';
					} else $class = '';

				$_SESSION['pages'][$p].="<tr class=\"".$class."\">\n";
				$tds=0;

				//Ga langs alle velden van de roosterwijzigingen
				foreach ($W as $V) {			
					$_SESSION['pages'][$p].="<td class=\"roosterwijzigingen\" style=\"text-align: center; padding: 8px; ".((strlen($V) > 20)?'font-size: 20pt;':''). " \">".($V===null?'&nbsp;':htmlentities($V))."</td>\n";
					$tds++; //Houd bij hoeveel TD's we hebben
				} //Einde foreach W

				//Sluit de rij af
				$_SESSION['pages'][$p].="</tr>\n";
				if ($colspan<$tds) $colspan=$tds; //Werk evt de variabele colspan bij

				//Verhoog het wijzigingsnummer met 1
				$i++;

				//Als we bij het maximum aantal wijzigingen voor een pagina zijn aanbeland
				if ($i==$settings[5]) { $_SESSION['pages'][$p].="</table>"; EndPage(); }

		} //Einde foreach wijzigingen
		
		if ($i<>$settings[5] and count($wijzigingen)>0 and $i>0) { $_SESSION['pages'][$p].="</table>"; EndPage(); } // AND $i>0, want als $i nul is dan is de foreach niet meer langsgeweest en is de pagina dus niet gemaakt. Je voorkomt hiermee notices en een lege pagina


Ik kom er echter niet uit hoe ik dit verticaal kan maken:


Iemand die kan helpen?

Alvast ontzettend bedankt!

Reageren