PHP4-Forum
Forum | Befehle | MySQL | Beispiele | Newsletter | Suche | Home

Untermenü

Forum
Beitrag schreiben
Übersicht aller Beiträge

Zu dieser Seite

Übersicht aller Beiträge
Willkommen im Forum!


Sehr geehrte Besucher, wir mochten gern, dass dieses Forum weiterhin ein hohes Niveau besitzt. Ausserdem mochten wir gerne vermeiden, dass Fragen immer doppelt vorkommen. Deshalb appellieren wir auf Ihre Geduld und bitten Sie zuerst nach Antworten zu suchen und erst dann Fragen zu stellen. Benutzen Sie bitte dafur entweder das Sucheformular unten, oder unsere Suchmaschine, wenn Sie nach Befehlen, oder sonstigen Inhalten fundig werden mochten.

PHP4-Forum Zum ForumSeite 0
PHP4-Forum For Schleife (Zeit von 07:00 bis 19:00 Step15 Min)franzel01.07.2010 | 14:36:51
PHP4-Forum [Kein Betreff]hanswurst01.07.2010 | 15:26:43
PHP4-Forum Danke - eigentlich super einfach...franzel01.07.2010 | 17:50:23
PHP4-Forum For Schleife (Zeit von 07:00 bis 19:00 Step15 MinGünni03.07.2010 | 21:47:27
PHP4-Forum Jetzt wird es schwierigfranzel11.07.2010 | 12:22:45
PHP4-Forum Ich versuchs mal ...Jakob20.08.2010 | 08:15:25

Guten Morgen, ist zwar erst grad früh am morgen aber ...

wenn keine Doppelbelegungen (an Zeiten) drin sein können gäbe es z.B. so eine Möglichkeit:
Es würde sich aber auch erweitern lassen, durch ein paar Abfragen.
Ist nur eine Idee, und auch ungetestet. Aber vllt. hilfts Dir ja weiter ... wenns nicht schon gelöst hast.

7:00 bis 19:00 sind in 15 Minuten Schritten entspricht genau 48 Teile. (Oder? :-))

[code]>
// Anzahl an Teile berechnen
$intMinHour = 7;
$intMaxHour = 19;
$intCount = ($intMaxHour-$intMinHour)*4;

// Array Initialisieren
$arrDates = array();
for($intIterator = 0; $intIterator < $intCount; $intIterator++)
{
    $arrDates[ $intIterator ] = 'Kein Termin vorhanden';
}

// Jetzt hast z.B. ein Termin von 8:00 bis 8:15
$strDateDescription= 'Ein Termin';
$intStartTimestamp = strtotime( '2010-08-20 08:00:00' );
$intEndTimestamp  = strtotime( '2010-08-20 08:15:00' );

$intStartHour = date( 'H', $intStartTimestamp ); // 8
$intStartMin  = date( 'm', $intStartTimestamp ); // 0

// Berechnung der Dauer, runtergebrochen auf die Indexierung des Arrays
$intDelay = ceil( ($intEndTimestamp - $intStartTimestamp) / 15.0 );
$intStartIndex = (int)(($intStartHour - $intMinHour)*4.0 + ceil($intStartMin / 15.0));

for($intIterator = $intStartIndex; $intIterator < $intStartIndex+$intDelay; $intIterator++)
{
    $arrDates[ $intIterator ] = $strDateDescription;
}

// Ergebnis
$arrDates[ 0 ] = 'Kein Termin vorhanden';
$arrDates[ 1 ] = 'Kein Termin vorhanden';
$arrDates[ 2 ] = 'Kein Termin vorhanden';
$arrDates[ 3 ] = 'Kein Termin vorhanden';
$arrDates[ 4 ] = 'Ein Termin';
$arrDates[ 5 ] = 'Ein Termin';
$arrDates[ 6 ] = 'Kein Termin vorhanden';
$arrDates[ 7 ] = 'Kein Termin vorhanden';
:
$arrDates[ 47 ]
[/code]

Antworten | Zurück | Eine neue Frage stellen | der Beitrag muss weg!

Dienstleistungen | Werbung | Impressum | Sitemap | Kontakt | Email © 1999 - 2012 | Last Update: 30.01.2012