Ergebnis 1 bis 6 von 6
  1. #1
    Fortgeschrittener
    Registriert seit
    29.07.2006
    Beiträge
    42

    Standard Dynamischer Kalender

    Hi zusammen,
    Ich habe hier schon nach etwas ähnlichen gesucht, hab es leider bisher
    nur nicht finden können.

    Ich suche einen Tutorial oder irgendwas was mir etwas helfen kann.

    Ich suche nehmlich ein Dynamischen Kalender in PHP, wo man Eintrage auch hinterlassen kann.

    Bsp.: http://www.darkdistricts.de/wbb2/calendar.php
    jeder Anfang ist schwer...

  2. #2

  3. #3
    Fortgeschrittener
    Registriert seit
    29.07.2006
    Beiträge
    42

    Standard

    Die Seite habe ich auch schon durch geschaut, nur da ist nichts was mir wirklich helfen könnte.
    jeder Anfang ist schwer...

  4. #4
    Anfänger
    Registriert seit
    04.07.2007
    Beiträge
    17

    Standard

    habs mir nicht genau angesehn aber vielleicht kann das hier helfen:

    http://phplearn.mali.ch/tutorial/34/show/

  5. #5
    Fortgeschrittener
    Registriert seit
    29.07.2006
    Beiträge
    42

    Standard

    Kann es sein, dass dieser PHP Code in einer Javascript funktion stekt?
    Wenn ja dann ist die Seite nichts für, da ich nichts mit Javascript machen will,
    aussicherheits halber, da man Javascript ja ausschalten kann.

    Irgendwie versteh ich voll den Tutorial nicht, auch wenn das mit PHP geschrieben ist, versteh ich voll den sinn nicht wieso dort dauernt PHP geöffnet und geschlossen wird.

    Trozdem Danke für den Link
    jeder Anfang ist schwer...

  6. #6
    Fortgeschrittener
    Registriert seit
    29.07.2006
    Beiträge
    42

    Standard

    Tach zusammen,
    so hab jetzt einen Code gefunden, den ich umschreiben musste, da funpic die funktion mit sqli nicht unterstützt -.-, naja kann man nichts machen auser das um zu schreiben. Nun habe ich es Umgeschrieben und einige Fehler konnte ich auch schon beseitigen, den einen Fehler kann ich nur nicht beseitigen, kann mir jemand dabei helfen.
    Hier sind alle Codes:
    kalender.php
    Code:
    <div align="center">
    <h2>Kalender</h2>
    
    
    <?php
    
    error_reporting (E_ALL);
    include_once("config.inc.php");
    
    // Prüfen - Monatsauswahl 
    $aktMonat = (isset($_POST['monat'])) ? $_POST['monat'] : date('n');
    
    // Prüfen - Jahresauswahl
    $aktJahr = (isset($_POST['jahr'])) ? $_POST['jahr'] : date('Y');
    
    
    
    // Lokales Datum ermitteln und verarbeiten
    setlocale(LC_TIME, '');
    
    $monat = strftime('%B', mktime(0,0,0,$aktMonat,1,$aktJahr));
    
    // Erster Tag des aktuellen Monats
    $ersterTag = strftime('%w', mktime(0,0,0,$aktMonat,1,$aktJahr));
    $ersterTag = ($ersterTag == 0) ? 7 : $ersterTag;
    
    // Letzter Tag des aktuellen Monats
    $letzterTag = date('t', mktime(0,0,0,$aktMonat,1,$aktJahr));
    
    // Listemenü Auswahl aktualisieren (Monat/Jahr)
    $auswahListe[$aktMonat] = 'selected';
    $auswahListe[$aktJahr] = 'selected';
    
    
    // SQL-Abfrage (Termine/Datensätze auslesen)
    $monatForm = (intval($aktMonat) < 10) ? "0" . $aktMonat : $aktMonat;
    $sql_befehl = "SELECT * from kalender where termindatum LIKE '$aktJahr-$monatForm%' ORDER BY termindatum";
    $resultat = mysql_query($sql_befehl) or die(mysql_error());
    // Termine - Termine für den Monat erfassen
    $termintage = array();
    
    while ($row = $resultat->mysql_fetch_object())
    {
    	$zeitstempel = strtotime($row->termindatum);
    	$termintag = strftime('%d', $zeitstempel);
    	array_push($termintage,$termintag);	
    }
    
    echo <<<TABANFANG
    <table width="300">
    <tr bgcolor="#ffff00">
    <th colspan="5">$monat</th><th colspan="2">$aktJahr</th>
    </tr>
    <tr>
    <th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th>
    </tr>
    <tr>
    TABANFANG;
    
    // Tabelleninhalt - Tagesauswahl des aktuellen Monats
    for ($i=0, $d=1; $i < $letzterTag; $i++, $d++)
    {
    
    // Prüfen - Monatsnummer (falls nötig Formatierung)
    $monatForm = (intval($aktMonat) < 10) ? "0" . $aktMonat : $aktMonat;
    
    // Prüfen - Tagenummer (falls nötig Formatierung)
    $tagForm = (intval($d) < 10) ? "0" . $d : $d;
    
    // Hyperlink - Datumsformatierung
    $linkDatum = "$aktJahr-$monatForm-$tagForm";
    
    // Termine - Markierung
    $marker = "";
    foreach($termintage as $wert)
    {
    	if ($tagForm == $wert)
    	{     	
    	 	$marker = "red";
    	}	
    }
    
    // Prüfen und Monatsanfang und sonstige Tage ausgeben
    if ($i == 0)
    {   		
    	printf('<td colspan="%d" align="right" bgcolor="%s">%02d</td>', $ersterTag, $marker, $linkDatum, $d);	
    } 
    else 
    {
    	printf('<td align="right" bgcolor="%s">%02d</td>', $marker, $linkDatum, $d);		
    }
    
    // Prüfen und neue Tabellenzeile ausgeben
    if (($i + $ersterTag) % 7 == 0) 
    {
    	echo '</tr><tr">';
    }
    
    }
    
    echo <<<TABENDE
    </tr></table>
    TABENDE;
    
    echo <<<AUSWAHLSTEUERUNG
    <form action="{$_SERVER['PHP_SELF']}" method="post">
    <table width="300">
    <tr class="latestnews">
    <td>
    <input type="submit" name="zurueck" value="<" />
    </td>
    <td>
    <select name="monat">
    	<option $auswahListe[1] value="1">Januar</option>
    	<option $auswahListe[2] value="2">Februar</option>
    	<option $auswahListe[3] value="3">M&auml;rz</option>
    	<option $auswahListe[4] value="4">April</option>
    	<option $auswahListe[5] value="5">Mai</option>
    	<option $auswahListe[6] value="6">Juni</option>
    	<option $auswahListe[7] value="7">Juli</option>
    	<option $auswahListe[8] value="8">August</option>
    	<option $auswahListe[9] value="9">September</option>
    	<option $auswahListe[10] value="10">Oktober</option>
    	<option $auswahListe[11] value="11">November</option>
    	<option $auswahListe[12] value="12">Dezember</option>
    </select>
    <select name="jahr">
    	<option $auswahListe[2005] value="2005">2005</option>
    	<option $auswahListe[2006] value="2006">2006</option>
    	<option $auswahListe[2007] value="2007">2007</option>
    	<option $auswahListe[2008] value="2008">2008</option>
    	<option $auswahListe[2009] value="2009">2009</option>
    	<option $auswahListe[2010] value="2010">2010</option>
    </select>
    <input type="submit" name="anzeigen" value="Anzeigen" />
    </td>
    <td>
    <input type="submit" name="weiter" value=">" />
    </td>
    </tr>
    </table>
    </form>
    AUSWAHLSTEUERUNG;
    
    // Monatsschalter - Nächster Monat
    if (strlen($_POST['weiter']) > 0) 
    {
    	$aktMonat++;
    	if ($aktMonat == 13) 
    	{
    		$aktMonat = 1;
    		$aktJahr++;
    	}
    }
    
    // Monatsschalter - Vorheriger Monat
    if (strlen($_POST['zurueck']) > 0) 
    {
    	$aktMonat--;
    	if ($aktMonat == 0) 
    	{
    		$aktMonat = 12;
    		$aktJahr--;
    	}
    }
    ?>
    </div>
    config.inc.php
    Code:
    <?php 
    $db_fehler_datenbank = "
    <html>
    <head>
    <title>Banner</title>
    <link rel='stylesheet' href='css/main.css' type='text/css'>
    </head>
    <body bgcolor='#FFFFFF' text='#000000'>
    <table width='300' align='center'>
      <tr>
        <td align='center' class='latestnews' colspan='3'>- FEHLER - 
    
    	  
    
    Die Datenbank sind z.Z. nicht abrufbar.</p>
          Versuchen Sie es bitte später nochmal!
    
    	  </td>
      </tr>
    </table>
    </body>
    </html>
    ";
    
    $db_fehler_daten = "
    <table width='300' align='center'>
      <tr>
        <td align='center' class='latestnews' colspan='3'>- FEHLER - 
    
    	  
    
    Die Daten sind z.Z. nicht abrufbar.</p>
          Versuchen Sie es bitte später nochmal!
    
    	  </td>
      </tr>
    </table>
    ";
    
    $db_fehler_erzeugen = "
    <table width='300' align='center'>
      <tr>
        <td align='center' colspan='3'>- FEHLER - 
    
    	  
    
    Termin konnte nicht angelegt werden!</p>
          Versuchen Sie es bitte später nochmal!
    
    	  
    
    Zurück</p>
    	  </td>
      </tr>
    </table>
    ";
    
    $db_fehler_entfernen = "
    <table width='300' align='center'>
      <tr>
        <td align='center' class='latestnews' colspan='3'>- FEHLER - 
    
    	  
    
    Termin konnte nicht gelöscht werden!</p>
          Versuchen Sie es bitte später nochmal!
    
    	  
    
    Zurück</p>
    	  </td>
      </tr>
    </table>
    ";
    
    // Verbindung aufbauen
    $db = mysql_connect("localhost","","") or die($db_fehler_datenbank);
    $db .= mysql_select_db("rzsud");
    
    // Verbindung überprüfen
    if (mysql_errno()) {
        echo $db_fehler_daten;
        exit();
    }
    
    // Validations und SQL-Injetction-Protection
    include_once("sqlprotect.inc.php");
    include_once("datenreiniger.inc.php");
    ?>
    datenreiniger.inc.php
    Code:
    <?php
    
    // Datenreiniger Filter (z.B. für Eingabetextfelder)
    function daten_reiniger($wert) {
     if (!empty($wert)) {
    	//HTML- und PHP-Code entfernen.
    	$wert = strip_tags($wert);
    	//Sonderzeichen in
    	//HTML-Schreibweise umwandeln
    	$wert = htmlspecialchars($wert,ENT_QUOTES);
    	//Entfernt überflüssige Zeichen
    	//Anfang und Ende einer Zeichenkette
    	$wert = trim($wert);
    	//Backslashes entfernen
    	$wert = stripslashes($wert);
     }
    return $wert;
    }
    
    // Aufruf
    // $gereinigter_kommentar = daten_reiniger($_POST[kommentar]);
    
    // Datenreiniger Filter (Variante mit htmlentities())
    // Hinweis zu htmlentities(): Die Funktion ist komplett 
    // identisch zu htmlspecialchars(), allerdings wandelt
    // htmlentities() wirklich alle Zeichen, die eine 
    // HTML-Code-Entsprechung haben, in diese Entsprechung 
    // um.
    function daten_reiniger_ext($wert) {
    	if (!empty($wert)) {
    		//HTML- und PHP-Code entfernen.
    		$wert = strip_tags($wert);
    		//Umlaute und Sonderzeichen in
    		//HTML-Schreibweise umwandeln
    		$wert = htmlentities($wert,ENT_QUOTES);
    		//Entfernt überflüssige Zeichen
    		//Anfang und Ende einer Zeichenkette
    		$wert = trim($wert);
    		//Backslashes entfernen
    		$wert = stripslashes($wert);
    	}
    return $wert;
    }
    
    // Aufruf
    // $gereinigter_kommentar = daten_reiniger_ext($_POST[kommentar]);
    
    ?>
    install.php
    Code:
    <?php
    error_reporting (E_ALL);
    include_once("config.inc.php");
    $install_sql="CREATE TABLE $dbtablle(
    termindatum datetime NOT NULL,
    nutzerid varchar (255),
    kategorie varchar(50),
    dauer INT NOT NULL,
    notiz text,
    PRIMARY KEY (termindatum, nutzerid)
    ");
    @$resultat = $db->query($install_sql);
    
    if($resultat)
    {
    	echo "<center>Installation war erfolgreich
    
    
    		<font color='#ff0000'>Lösch die install.php</font></center>";
    }
    else
    {
    	echo"Fehler beim installieren, prüfe config.inc.php";
    }
    		
    ?>
    sqlprotect.inc.php
    Code:
    <?php
    error_reporting (E_ALL);
    // Simple Version (für einfache Variablen)
    function sqli_protect($wert,$db)
    {
        // Überflüssige Maskierungen aus der
    	// übergebenen Variable entfernen
        if (get_magic_quotes_gpc()) 
    	{
            $wert = stripslashes($wert);
        }
        // Übergebenen Variablewert in Anführungszeichen
    	// setzen, sofern  keine Zahl oder ein
        // numerischer String vorliegt
        if (!is_numeric($wert)) 
    	{
            $wert = "'" . mysqli_real_escape_string($db,$wert) . "'";
        }
        return $wert;
    }
    
    // Erweiterte Version (für einfache Variaben und Arrays)
    // Hinweis: Durch die Rekursion ist diese Funktion etwas langsamer!
    function sqli_protect_ext($wert,$db)
    {
       if( is_array($wert) ) 
       {
           return array_map("sqli_protect_ext", $wert);
       } 
       else 
       {
       	   // Überflüssige Maskierungen aus der
    	   // übergebenen Variable entfernen
           if( get_magic_quotes_gpc() ) 
    	   {
               $wert = stripslashes($wert);
           }
    	   // Ubergebene Variblenwert, welche einen Leer 
    	   // String besitzen, werden durch ein NULL ersetzt
           if( $wert == '' ) 
    	   {
               $wert = 'NULL';
           } 
    	   // Übergebenen Variablewert in Anführungszeichen
    	   // setzen, sofern  keine Zahl oder ein
           // numerischer String vorliegt
    	   if( !is_numeric($wert) || $wert[0] == '0' ) 
    	   {
               $wert = "'" . mysqli_real_escape_string($db,$wert) . "'";
           }
           return $wert;
       }
    }
    
    ?>
    terminverwaltung.php
    Code:
    <?php
    error_reporting (E_ALL);
    // Weiterleitung zur Kalenderauswahl
    if (!isset($_REQUEST[termindatum])) { 
    	header("Location:kalender.php");
    }
    
    ?>
    
    <div align="center">
    <form method="POST" action="terminverwaltung.php">
    <?php
    
    include_once("config.inc.php");
    
    // Termin - Entfernen
    if (isset($_POST[loeschen])) 
    {
    	$daten = explode(",",$_POST[entfernen]);
    	
    	// SQL-Abfrage (Termin/Datensatz entfernen)
    	$sql_befehl = "DELETE FROM $kalender WHERE nutzerid=" . 
    	sqli_protect($daten[0],$db) . " AND termindatum=" . 
    	sqli_protect($daten[1],$db);
    	
    	$resultat = $db->query($sql_befehl) or die ($db_fehler_entfernen);
    }
    
    // Termin - Eintragen
    if (isset($_POST[abschicken])) 
    {	
    	$stunde = ($_POST[stunde] < 10) ? "0" . $_POST[stunde] : $_POST[stunde];
    	
    	$termin = "$_POST[termindatum] $stunde:00:00";		
    	
    	// SQL-Abfrage (Termin/Datensatz hinzufügen)
    	$sql_befehl = "INSERT INTO $dbtabelle
    (termindatum,notiz,nutzerid,kategorie,dauer) 
    VALUES
    ('$termin'," 
    . sqli_protect(daten_reiniger_ext($_POST[notiz]),$db) . ","
    . sqli_protect(daten_reiniger_ext($_POST[nutzerid]),$db) . ","
    . sqli_protect(daten_reiniger_ext($_POST[kategorie]),$db) . ","
    . sqli_protect(daten_reiniger_ext($_POST[dauer]),$db) . ")";
    	
    	$resultat = $db->query($sql_befehl) or die ($db_fehler_erzeugen);
    
    	echo "
    	<table width='600'>
      	<tr align='center'>
        	<td><h2>Termin - Gespeichert!</h2></td>
      	</tr>
      	</table>
    	";
    	
    	// echo "
    
    Termin - Gespeichert!</p>";
    }
    
    // SQL-Abfrage (Termine/Datensätze auslesen)
    $sql_befehl = "SELECT * from kalender where termindatum LIKE '$_REQUEST[termindatum]%' ORDER BY termindatum";
    $resultat = $db->query($sql_befehl) or die ($db_fehler_daten);
    
    // Termindatum umwandeln von YYYY-MM-DD -> Tag, DD. Monat YYYY 
    setlocale (LC_TIME, 'de_DE@euro', 'de_DE', 'de', 'ge');
    $zeitstempel = strtotime($_REQUEST[termindatum]);
    $datumsausgabe = strftime('%A, %d. %B %Y', $zeitstempel);
    
    // Prüfen - Termine
    if (!$resultat->num_rows) 
    {
    	echo "
    	<table width='600'>
      	<tr align='center'>
        	<td class='latestnews'><h2>Noch keine Termine</h2></td>
      	</tr>
      	</table>
    	";
    	
    	// echo "Noch keine Termine
    
    ";
    } 
    else 
    {	
    	echo "
    	<table width='600'>
      	<tr align='center'>
        	<td class='latestnews'><h2>Termine für $datumsausgabe</h2></td>
      	</tr>
      	</table>
    	";
    	
    	// echo "Termine für $datumsausgabe
    ";
    }
    
    echo <<<TABANFANG
    <table width='600' colspan='5'>
      <tr align='left'>
        <td class='latestnews'>Termine</td>
      </tr>
      <tr>
        <td class='autor'>
          <table width='100%' border='0' cellspacing='2' cellpadding='2'>
            <tr>
              <td class='autorblack'>Uhrzeit</td>
              <td class='autorblack'>Dauer</td>
              <td class='autorblack'>Nutzer</td>
              <td class='autorblack'>Termin-Typ</td>
              <td class='autorblack'>L&ouml;schen</td>
            </tr>
    TABANFANG;
    
    	// Termine - Auflisten (Tabelleninhalt)
    	while ($row = $resultat->fetch_object())
    	{
    	
    	// Termindatum umwandeln von YYYY-MM-DD auf DD-MM-YYYY 
    	$zeitstempel = strtotime($row->termindatum);
    	$uhrzeit = date('H:i', $zeitstempel);
    	
    	echo "
    	    <tr>
              <td class='autor'>$uhrzeit</td>
              <td class='autor'>$row->dauer Stunden</td>
              <td class='autor'>$row->nutzerid</td>
              <td class='autor'>$row->kategorie</td>
              <td class='autor'><input type='radio' value='$row->nutzerid,$row->termindatum' name='entfernen'></td>
            </tr>
    		<tr>
    		  <td class='autor'><span class='autorblack'>Notiz</span></td>
    		  <td colspan='4' class='autor'>$row->notiz</td>
    	    </tr>
    		<td colspan='5' class='latestnews'></td>
            ";
    	}
    
    echo <<<TABENDE
    </table>
        </td>
      </tr>
      <tr>
        <td class='latestnews'></td>
      </tr>
    </table>
    TABENDE;
    
    ?>
    
    
    
      <input type="hidden" name="termindatum" value="<?php echo $_REQUEST[termindatum];?>">
      </p>
    
    
    
      <input type="submit" name="loeschen" value="Termine - L&ouml;schen">
    </p>
    </form>
    <form method="POST" action="terminverwaltung.php">
      
    
    Termin hinzufügen für <?php echo $datumsausgabe; ?>
    
        <input type="hidden" name="termindatum" value="<?php echo $_REQUEST[termindatum];?>">
      </p>
      <table width="600" border="0" cellspacing="2" cellpadding="2">
        <tr>
          <td colspan="2" align="left" valign="top" class="latestnews"></td>
        </tr>
        <tr>
          <td align="left" valign="top">Uhrzeit:
            <select name="stunde">
              <option selected="selected" value="1">01:00</option>
              <option value="2">02:00</option>
              <option value="3">03:00</option>
              <option value="4">04:00</option>
              <option value="5">05:00</option>
              <option value="6">06:00</option>
              <option value="7">07:00</option>
              <option value="8">08:00</option>
              <option value="9">09:00</option>
              <option value="10">10:00</option>
              <option value="11">11:00</option>
              <option value="12">12:00</option>
              <option value="13">13:00</option>
              <option value="14">14:00</option>
              <option value="15">15:00</option>
              <option value="16">16:00</option>
              <option value="17">17:00</option>
              <option value="18">18:00</option>
              <option value="19">19:00</option>
              <option value="20">20:00</option>
              <option value="21">21:00</option>
              <option value="22">22:00</option>
              <option value="23">23:00</option>
            </select></td>
          <td align="left" valign="top">Termin Notiz:</td>
        </tr>
        <tr>
          <td align="left" valign="top">
    
    Nutzer:
    
              <input type="text" name="nutzerid">
              
    
    Ereignis Kategorie:
    
    <input type="text" name="kategorie">
    
    
    Dauer (in Stunden):
    
    <input type="text" name="dauer">
    </p>      </td>
          <td align="left" valign="top">
    
    
            <textarea name="notiz" cols="50" rows="6"></textarea>
            </p>      </td>
        </tr>
        <tr>      
          <td colspan="2" align="center"><input type="submit" name="abschicken" value="Termin - Eintragen"></td>
        </tr>
        <tr>
          <td colspan="2" class="latestnews"></td>
        </tr>
    	<tr>
    		<td colspan="2" align="center">Z&uuml;rck zum Kalender</td>
    	</tr>
      </table>
      </form>
     
    
     </div>
    Added after 71 hours 2 minutes:

    Hi zusammen, hab jetzt den Code soweit bearbeitet wie es geht, es wird nur noch ein fehler mir ausgegeben bzw. kann ich die Monate nicht weiter und zurück gehen wieso?
    Code:
    Code:
    <div align="center">
    <?php
    error_reporting(E_ALL);
    
    include_once("db.inc.php");
    
    $aktmonat = (isset($_POST['monat'])) ? $_POST['monat'] : date('n');
    $aktjahr =(isset($_POST['jahr'])) ? $_POST['jahr'] : date('Y');
    
    
    
    //Mit setlocale ist es mögliche Zeitformate einzustellen
    //Wirkt auf Datum und Zeitformatierung mit strftime()
    
    $zeitconfig=setlocale(LC_TIME,'de_DE@euro','de_DE','de','ge');
    
    //$monat = zeitformatierunhg(January bis Dezember,Zeitstempel)
    $monat = strftime('%B', mktime(0,0,0,$aktmonat,1,$aktjahr));
    
    //%w= 0sonstag-6Samstag
    $erstertag = strftime('%w', mktime(0,0,0,$aktmonat,1,$aktjahr));
    $erstertag = ($erstertag == 0) ? 7 : $erstertag;
    //t=tag im monat 
    $letztertag= date('t',mktime(0,0,0,$aktmonat,1,$aktjahr));
    
    
    $monatform = (intval($aktmonat) < 10) ? '0' . $aktmonat : $aktmonat;
    
    $resultat = mysql_query($selecttb) or die (mysql_error());
    
    $termintage = array();
    
    while ($row = mysql_fetch_object($resultat))
    {
    	$zeitstempel = strtotime($row->termindatum);
    	$termintag = strftime('%d', $zeitstempel);
    	array_push($termintage,$termintag);	
    }
    
    echo "
    <table width='300' border='1'>
    <tr bgcolor='#ffff00'>
    <th colspan='5'>$monat</th><th colspan='2'>$aktjahr</th>
    </tr>
    <tr>
    <th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th>
    </tr>
    <tr>";
    
    // Tabelleninhalt - Tagesauswahl des aktuellen Monats
    for ($i=0, $d=1; $i < $letztertag; $i++, $d++)
    {
    
    // Prüfen - Monatsnummer (falls nötig Formatierung)
    $monatForm = (intval($aktmonat) < 10) ? "0" . $aktmonat : $aktmonat;
    
    // Prüfen - Tagenummer (falls nötig Formatierung)
    $tagform = (intval($d) < 10) ? "0" . $d : $d;
    
    // Hyperlink - Datumsformatierung
    $linkdatum = "$aktjahr-$monatform-$tagform";
    
    // Termine - Markierung
    $marker = "";
    foreach($termintage as $wert)
    {
    	if ($tagform == $wert)
    	{     	
    	 	$marker = "red";
    	}	
    }
    
    // Prüfen und Monatsanfang und sonstige Tage ausgeben
    if ($i == 0)
    {   		
    	printf('<td colspan="%d" align="right" bgcolor="%s">%02d</td>', $erstertag, $marker, $linkdatum, $d);	
    } 
    else 
    {
    	printf('<td align="right" bgcolor="%s">%02d</td>', $marker, $linkdatum, $d);		
    }
    
    // Prüfen und neue Tabellenzeile ausgeben
    if (($i + $erstertag) % 7 == 0) 
    {
    	echo '</tr><tr">';
    }
    
    }
    
    
    echo <<<TABENDE
    </tr></table>
    TABENDE;
    
    echo "
    <form action='kalender.php' method='post'>
    <table width='300'>
    <tr>
    <td>
    <input type='submit' name='zurueck' value='<<' />
    </td>
    echo"<td>
    <input type='submit' name='weiter' value='>>' />
    </td>
    </tr>
    </table>
    </form>";
    
    //Monatschalter Weiter
    if ($_POST[weiter] > 0)
    {
    	$aktmonat++;
    	if($aktmonat==13)
    	{
    		$aktmonat=1;
    		$aktjahr++;
    	}
    }
    
    //Monatschalter Zrurück
    if($_POST[zurueck] > 0)
    {
    	$aktmonat--;
    	if($aktmonat == 0)
    	{
    	$aktjahr--;
    	$aktmonat=12;
    	}
    }
    	
    
    ?>
    Added after 1 minutes:

    Hi zusammen, hab jetzt den Code soweit bearbeitet wie es geht, es wird nur noch ein fehler mir ausgegeben bzw. kann ich die Monate nicht weiter und zurück gehen wieso?
    Code:
    Code:
    <div align="center">
    <?php
    error_reporting(E_ALL);
    
    include_once("db.inc.php");
    
    $aktmonat = (isset($_POST['monat'])) ? $_POST['monat'] : date('n');
    $aktjahr =(isset($_POST['jahr'])) ? $_POST['jahr'] : date('Y');
    
    
    
    //Mit setlocale ist es mögliche Zeitformate einzustellen
    //Wirkt auf Datum und Zeitformatierung mit strftime()
    
    $zeitconfig=setlocale(LC_TIME,'de_DE@euro','de_DE','de','ge');
    
    //$monat = zeitformatierunhg(January bis Dezember,Zeitstempel)
    $monat = strftime('%B', mktime(0,0,0,$aktmonat,1,$aktjahr));
    
    //%w= 0sonstag-6Samstag
    $erstertag = strftime('%w', mktime(0,0,0,$aktmonat,1,$aktjahr));
    $erstertag = ($erstertag == 0) ? 7 : $erstertag;
    //t=tag im monat 
    $letztertag= date('t',mktime(0,0,0,$aktmonat,1,$aktjahr));
    
    
    $monatform = (intval($aktmonat) < 10) ? '0' . $aktmonat : $aktmonat;
    
    $resultat = mysql_query($selecttb) or die (mysql_error());
    
    $termintage = array();
    
    while ($row = mysql_fetch_object($resultat))
    {
    	$zeitstempel = strtotime($row->termindatum);
    	$termintag = strftime('%d', $zeitstempel);
    	array_push($termintage,$termintag);	
    }
    
    echo "
    <table width='300' border='1'>
    <tr bgcolor='#ffff00'>
    <th colspan='5'>$monat</th><th colspan='2'>$aktjahr</th>
    </tr>
    <tr>
    <th>Mo</th><th>Di</th><th>Mi</th><th>Do</th><th>Fr</th><th>Sa</th><th>So</th>
    </tr>
    <tr>";
    
    // Tabelleninhalt - Tagesauswahl des aktuellen Monats
    for ($i=0, $d=1; $i < $letztertag; $i++, $d++)
    {
    
    // Prüfen - Monatsnummer (falls nötig Formatierung)
    $monatForm = (intval($aktmonat) < 10) ? "0" . $aktmonat : $aktmonat;
    
    // Prüfen - Tagenummer (falls nötig Formatierung)
    $tagform = (intval($d) < 10) ? "0" . $d : $d;
    
    // Hyperlink - Datumsformatierung
    $linkdatum = "$aktjahr-$monatform-$tagform";
    
    // Termine - Markierung
    $marker = "";
    foreach($termintage as $wert)
    {
    	if ($tagform == $wert)
    	{     	
    	 	$marker = "red";
    	}	
    }
    
    // Prüfen und Monatsanfang und sonstige Tage ausgeben
    if ($i == 0)
    {   		
    	printf('<td colspan="%d" align="right" bgcolor="%s">%02d</td>', $erstertag, $marker, $linkdatum, $d);	
    } 
    else 
    {
    	printf('<td align="right" bgcolor="%s">%02d</td>', $marker, $linkdatum, $d);		
    }
    
    // Prüfen und neue Tabellenzeile ausgeben
    if (($i + $erstertag) % 7 == 0) 
    {
    	echo '</tr><tr">';
    }
    
    }
    
    
    echo <<<TABENDE
    </tr></table>
    TABENDE;
    
    echo "
    <form action='kalender.php' method='post'>
    <table width='300'>
    <tr>
    <td>
    <input type='submit' name='zurueck' value='<<' />
    </td>
    echo"<td>
    <input type='submit' name='weiter' value='>>' />
    </td>
    </tr>
    </table>
    </form>";
    
    //Monatschalter Weiter
    if ($_POST[weiter] > 0)
    {
    	$aktmonat++;
    	if($aktmonat==13)
    	{
    		$aktmonat=1;
    		$aktjahr++;
    	}
    }
    
    //Monatschalter Zrurück
    if($_POST[zurueck] > 0)
    {
    	$aktmonat--;
    	if($aktmonat == 0)
    	{
    	$aktjahr--;
    	$aktmonat=12;
    	}
    }
    	
    
    ?>
    jeder Anfang ist schwer...

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •