Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Problem mit Kalender Skript

Frage Entwicklung PHP

Mitglied: Closed

Closed (Level 1) - Jetzt verbinden

27.08.2008, aktualisiert 28.08.2008, 3089 Aufrufe, 1 Kommentar

hi,

hab ein Problem mit einem Kalender Skript. der aktuelle Monat wird mir korrekt angezeigt. Jetzt habe ich das Skript etwas verändert, und zwar so, dass ich im Kalender blättern kann. Dazu übergebe ich via GET den Monat und das Jahr. das fange ich dann auf und übergebe es an das Kalender Skript. Das Problem was ich nun habe, ist dass zum Beispiel der Juni diesen Jahres an einem Montag startet. Er sollte aber an einem Sonntag beginnen. Kann den Fehler leider nicht finden, vermute aber fast, dass es an meinen Änderungen liegt und nicht an dem Skript selber

Hoffe ihr könnt mir da helfen

danke schonmal

01.
// Array der Wochentag und Monate 
02.
	$weekdays = array("Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"); 
03.
	$monats = array("Januar", "Februar", "März", "April", "Mai","Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"); 
04.
 
05.
	//wenn ein Datum ausgewählt wurde, wird es so abgeschickt 
06.
	if(isset($_POST['submit_datum'])){ 
07.
		//Erzeugung eines Arrays, damit anderer Code im Skript nicht geändert werden muss 
08.
		$heute = array("mon","year"); 
09.
		$heute[year]=$_POST['jahr']; 
10.
		$heute[mon]=($_POST['monat']+1); 
11.
	}else{ 
12.
		// heutiges Datum bekommen, wenn weder post noch get gesetzt sind 
13.
		//wenn über die verlinkungen oben gegangen wird, wird der tag nciht gesetzt 
14.
		// wenn der tag auch noch gesetzt wurde, dann wurde ein einzzelner tag ausgewählt 
15.
		if(!isset($_GET['jahr']) && !isset($_GET['monat']) || $_GET['jahr']=='' || $_GET['monat']==''){ 
16.
			$heute = getdate(); 
17.
		}else{ 
18.
			//Erzeugung eines Arrays, damit anderer Code im Skript nicht geändert werden muss 
19.
			//Anpassung des Monats 
20.
			$heute = array("mon","year"); 
21.
			$heute[year]=$_GET['jahr']; 
22.
			$monat = $_GET['monat']; 
23.
			if($monat>12){$monat = $monat - 12;} 
24.
			$heute[mon]=$monat; 
25.
26.
27.
	$monat = $heute[mon]; 
28.
	$jahr = $heute[year]; 
29.
	// Zeiger auf den Anfang des Monats setzten 
30.
	$start = mktime ( 0, 0, 0, $monat, 1, $jahr ); 
31.
	$datum = getdate($start); 
32.
	/* 
33.
	Wochentag             =    $datum[weekday] 
34.
	Wochentag als Int    =     $datum[wday] 
35.
	Monatstag             =    $datum[mday] 
36.
	Monat als Zahl         =     $datum[mon] 
37.
	Monat als String     =     $datum[month] 
38.
	Jahr                 =     $datum[year] 
39.
	*/ 
40.
 
41.
	//Anzeige des Monats über der Tabelle  
42.
	//Ermittelung des Monats als Zahl und dann den deutschen Monat aus dem Array anzeigen lassen 
43.
	echo "<div align='left'><h4><a href=".$_SERVER['PHP_SELF']."?$sName=$sID&jahr="; 
44.
	 
45.
	if(($datum[mon])==1){ 
46.
		echo ($datum[year]-1)."&monat=".($datum[mon]+11).">".$monats[$datum[mon]+10]."</a> -&nbsp;&nbsp;"; 
47.
	}else{ 
48.
		echo $datum[year]."&monat=".($datum[mon]-1).">".$monats[$datum[mon]-2]."</a> -&nbsp;&nbsp;"; 
49.
50.
	echo "".$monats[$datum[mon]-1] . " " . $datum[year]."&nbsp;&nbsp;"; 
51.
	echo " - <a href=".$_SERVER['PHP_SELF']."?$sName=$sID&jahr="; 
52.
	if(($datum[mon]+1)==13){ 
53.
		echo ($datum[year]+1)."&monat=".($datum[mon]+1).">".$monats[$datum[mon]-12]."</a></h4></div>"; 
54.
	}else{ 
55.
		echo $datum[year]."&monat=".($datum[mon]+1).">".$monats[$datum[mon]]."</a></h4></div>"; 
56.
57.
?> 
58.
<form method='post' id='form' name='form' action='<?php echo htmlentities($_SERVER['PHP_SELF'])  . "?$sName=$sID&seite=".$seite; ?>'> 
59.
    <table border="1">  
60.
<?php           
61.
	echo '<tr class="tabelle_th">'; 
62.
		foreach ($weekdays as $weekday) // Wochentage einschreiben 
63.
64.
			echo '<td align="center">'.$weekday.'</td>'; 
65.
66.
	echo "</tr><tr>";        
67.
	for($i=0; $i< (6*7); $i++){ // Tablle aufbauen 
68.
		if (($i%7)==0){ // wenn i ein Teiler von 7 ist dann wird eine neue Zeile angefangen 
69.
			echo "</tr>\n<tr>\n"; 
70.
71.
		// wenn der Tag größer ist als die Zählvariable oder der Monat des "Zeigers" ungleich des anzuzeigenden Monats 
72.
		if ($i < $datum[wday]-1 || $datum[mon] != $monat){  
73.
			echo "<td "; 
74.
			if(($i%7)==0){ 
75.
				echo "class=\"tabelle_links\""; 
76.
			}else if((($i+1)%7)==0){ 
77.
				echo "class=\"tabelle_rechts2\""; 
78.
			}else{ 
79.
				echo "class=\"tabelle_rechts\""; 
80.
81.
			echo ">&nbsp;</td>\n"; 
82.
		}else{ 
83.
			echo "<td valign=\"top\" "; 
84.
			if(($i%7)==0){ 
85.
				echo "class=\"tabelle_links\""; 
86.
			}else if((($i+1)%7)==0){ 
87.
				echo "class=\"tabelle_rechts2\""; 
88.
			}else{ 
89.
				echo "class=\"tabelle_rechts\""; 
90.
91.
			echo '><a href="kalender_tagesansicht_public.php?'.$sName.'='.$sID.'&tag='.$datum[mday].'&monat='.$datum[mon].'&jahr='.$datum[year].'&seite=1"><div align="right" style="color:#9db7e3">'.$datum[mday].'</div></a>'; 
92.
			echo termine($datum[mday], $datum[mon], $datum[year], $server, $username, $password, $database); 
93.
			echo '</td>'; 
94.
			$nextday = $datum[mday]+1; 
95.
			$start = mktime ( 0, 0, 0, $monat, $nextday, $jahr ); 
96.
			$datum = getdate($start); 
97.
98.
99.
	echo "</tr>\n";  
100.
?>
(es folgt weiterer irrelevanter Quellcode)

NACHTRAG:

da das datumsarray geändert wurde, muss auch der daumswert angepasst werden.
das problem ist, wenn der erste tag auf einen sonntag fällt, dann gibt getadte eine null zurück
das problem daran ist nun, dass ich eins abziehe und somit den wert im ersten schleifendurchlauf unterhalb
der zählvariable habe und damit ein datumswert angezeigt wird. deshalb muss als erstes +7 gerechnet werden.
eigentlich nur +6, aber bei der überprüfung wird ja eins abgezogen.
somit funktioniert der kalender endlich.

danke euch trotzdem
Mitglied: masterG
28.08.2008 um 11:00 Uhr
Zitat von Closed:
NACHTRAG:

da das datumsarray geändert wurde, muss auch der daumswert
angepasst werden.
das problem ist, wenn der erste tag auf einen sonntag fällt,
dann gibt getadte eine null zurück
das problem daran ist nun, dass ich eins abziehe und somit den wert
im ersten schleifendurchlauf unterhalb
der zählvariable habe und damit ein datumswert angezeigt wird.
deshalb muss als erstes +7 gerechnet werden.
eigentlich nur +6, aber bei der überprüfung wird ja eins
abgezogen.
somit funktioniert der kalender endlich.

danke euch trotzdem

Thread closed
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Über Skript auf Öffentlichen Kalender in Outlook zugreifen (Standard Kalender geht bereits)
gelöst Frage von tcg1982Microsoft Office15 Kommentare

Hallo zusammen, Ich habe mir aus einem Thread hier ein Skript zusammengebastelt, das jeden Arbeitstag die Kalenderzusammenfassung des folgenden ...

Batch & Shell
Problem mit UNC-Pfad ? powershell-skript
Frage von today12Batch & Shell2 Kommentare

Hallo liebe Community, ich hab ein kleines Verständnis Problem mit UNC-Pfade. ich möchte mein Skript auf ein Netzlaufwerk legen, ...

Batch & Shell
Skript Problem Suche nach bestimmten Textmuster in mehreren Textdateien
gelöst Frage von hooligen110Batch & Shell9 Kommentare

Hallo liebe Community, ich habe folgendes Problem. Ich soll für meinen Chef ein automatisierbares Script schreiben,mit dem eingegangene .tif ...

Batch & Shell
Problem mit IF Abfrage bei simplem Shutdown Skript
gelöst Frage von Yoshi171199Batch & Shell4 Kommentare

Hallo, ich wollte gestern ein ziemlich simples Shutdown Menü skript in batch erstellen Wie ich jedoch feststellte funktionierte meine ...

Neue Wissensbeiträge
Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 17 StundenApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 22 StundenWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 22 StundenWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Internet

EU-DSGVO: WHOIS soll weniger Informationen liefern

Information von sabines vor 1 TagInternet4 Kommentare

Wegen der europäische Datenschutzgrundverordnung stehen die Prozesse um die Registrierung von Domains auf dem Prüfstand. Sollte die Forderungen umgesetzt ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...

Windows XP
Windows XP Aktivieren geht nicht
Frage von tetikmiroWindows XP13 Kommentare

Hallo Ich habe einen Windows XP mit einen vCenter Converter umgezogen auf eine ESXI. Soweit funktioniert dies auch ohne ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
gelöst Frage von prodriveNetzwerkmanagement12 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...