104128
Goto Top

Script, 7 Tage Ausgabe mit Array voller Termine, Kalender

Folgendes Script habe ich:

<?php
$daycount = 1;
while($daycount <= 7) {
	print '<div style="float:left;">';  
	
	// Termine abrufen
	$sql_getdates = "SELECT  
						`id`,
						`day`,
						`month`,
						`year`,
						`hour`,
						`minute`,
						`title`
					FROM
						`comerp_calendar`
					WHERE
						`day`='".mysql_real_escape_string($day_s)."'  
					AND
						`month`='".mysql_real_escape_string($month)."'  
					AND
						`year`='".mysql_real_escape_string($year)."'  
					ORDER BY
						`datetime`
					DESC
					";  
	$get_dates = mysql_query($sql_getdates) OR die(mysql_error());
	$dates = mysql_fetch_array($get_dates);
	
	$hours = 7;
	while($hours <= 18) {
		$minutes = 0;
		while($minutes <= 45) {
			print '<div style="background-color:#CCCCCC; width:100px;">'.sprintf("%1$02d", $hours).':'.sprintf("%1$02d", $minutes).'</div>';  
			$minutes = $minutes + 15;
		}
		$hours++;	
	}
	
	print "</div>";  
	
	// Tagzähler hochzählen
	$daycount++;
	$day_s++;
}
print '<div style="clear:both;"></div>';  
?>

Ich möchte eine 7 Tage Ansicht haben. Diese ist ja kein Problem. Nun soll er täglich den Tag noch in 15-Minuten einteilen, auch kein Problem.
Mit "$dates" habe ich nun ein Array, wo alle Termine des aktuellen Tages enthalten sind. Es werden also 7 Queries benötigt, um die Termine auszulesen.

Wie kann ich nun in der "while($minutes..." prüfen, ob für die Uhrzeit ein Termin im Array steckt? Ich hab es mit "for" bereits probiert - allerdings kam nur Müll heraus...Hat jemand einen Lösungsansatz?

Ich danke im voraus!
Lg, Marc

Content-Key: 178364

Url: https://administrator.de/contentid/178364

Printed on: April 23, 2024 at 13:04 o'clock

Member: viplex
viplex Apr 04, 2012 at 19:49:06 (UTC)
Goto Top
Schon eine Lösung gefunden?
Mitglied: 104128
104128 Apr 09, 2012 at 20:05:33 (UTC)
Goto Top
Hey!

Leider bisher keine Lösung face-sad

*push*
Member: viplex
Solution viplex Apr 09, 2012, updated at Jan 06, 2014 at 22:28:28 (UTC)
Goto Top
Hallo, an sich ist das überhaupt kein Problem. Gib mal die SQL Struktur durch. (show create)
Ich würde bei deinem Problem aber anders ansetzen. Ich würde die Woche bestimmen und dann alle Termine dieser holen. Dann reicht auch eine Query.


So wie du es jetzt gelöst hast, musst du mit der mysql antowrt weiterarbeiten.
Diese würde ich in ein assoziatives array packen. Danach kannst du in der while-schleife(mit den minuten)
mit if abfragen, ob in dem neuen array daten vorhanden sind.

wenn du den code dazh brauchst. schreib einfach
Mitglied: 104128
104128 Apr 22, 2012 at 11:18:04 (UTC)
Goto Top
Hier die Struktur:

Field Type Null Key Default Extra
id int(11) PRI NULL auto_increment
day int(2) 0
month int(2) 0
year int(4) 0
hour int(2) 0
minute int(2) 0
datetime bigint(15) unsigned zerofill MUL 000000000000000
title varchar(255)
description text


Ich wüsste grad nicht, wie ich den Code umschreiben müsste. Dein Angebot "wenn du den code dazh brauchst. schreib einfach" würde ich deshalb gerne annehmen ;D

Lg, Marc