Olk Okenheld: Adventskalender mit HTML

Hi, ich wollte einen Adventskalender mittels HTML programieren, gibt es da irgend wo Vorlagen oder Ideen wie man das umsetzen kann?

THX Olk Okenheld

  1. Hi Olk Okenheld,
    man kann kann den Kalender mit hilfe von Image Map.
    Vorlagen habe ich noch keine im Netz gefunden.

    mfg Eregister

  2. Hallo,

    Hi, ich wollte einen Adventskalender mittels HTML programieren,

    HTML ist keine Programmiersprache.
    http://www.netandmore.de/faq/fom-serve/cache/447.html

    Wenn Du willst, dass man die Tuerchen nicht zu frueh oeffnen kann,
    und wenn Du nicht jeden Tag persoenlich "von Hand" die HTML-Seite
    aendern willst, musst Du eine Programmier- oder Skriptsprache anwenden.

    Client-Seitig: JavaScript.
    Server-Seitig: z.B. Perl, PHP.

    gibt es da irgend wo Vorlagen oder Ideen wie man das umsetzen kann?

    Bestimmt.

    Entscheide Dich fuer eine Technologie. (Serverseitig ist besser).

    Suche dann mit Google:

    http://www.google.com/search?q=adventskalender+javascript

    http://www.google.com/search?q=adventskalender+php
    findet z.B.
    http://php-resource.de/scripte/show/4791/

    Gruesse,

    Thomas

  3. Hallo,

    Hi, ich wollte einen Adventskalender mittels HTML programieren, gibt es da irgend wo Vorlagen oder Ideen wie man das umsetzen kann?

    Ich werde am Montag anfangen per PHP einen für die Seite meiner Band zu machen, dann kann ich dir den Quellcode schicken, wenn du willst. Ich werde es mit hilfe von MySQL machen.

    Grüße
    Jeena Paradies

    --
    "Of course it does not work, but look how fast it is!"
    1. Hallo,

      Ich werde am Montag anfangen per PHP einen für die Seite meiner Band zu machen, dann kann ich dir den Quellcode schicken, wenn du willst. Ich werde es mit hilfe von MySQL machen.

      Ich habe es mir jetzt anders überlegt und zwar sind es ja eh nur 24 Tage (bei meinem werden es 26 aber egal). Ich will da jeden Tag verschiedene Bilder anzeigen lassen. Wenn man alle bilder sammelt, und ausdruckt bekommt man dann am 26.12 freien Eintritt zu unserem Konzert.

      Ich werde es einfach mit 26

      if(Datum == 01.12.03) zeige Bild(01.12.03)
      if(Datum == 02.12.03) zeige Bild(02.12.03)
      ...

      machen. Nun könnte jemand auf die Idee kommen alle Bilder auf einmal runterzuladen und nicht jeden Tag auf unsere hp zu kommen . Dem wirke ich entgegen indem ich mit .htacess das auflisten des Inhalts des Verzeichnisses verbiete und für die Bilder total zufällige Namen wie

      njfekafrap.jpg
      erqwejfkdl.jpg
      fenwlfewan.jpg

      Wenn man die Namen herausfindet dann hat man es verdient auf unser konzert zu kommen.

      Grüße
      Jeena Paradies

      --
      "Of course it does not work, but look how fast it is!"
      1. Hallo,

        Wenn man alle bilder sammelt, und ausdruckt bekommt man dann am 26.12 freien Eintritt zu unserem Konzert.

        Hast Du Aktien bei einem Tintenpatronen-Hersteller? ;-)

        Ich werde es einfach mit 26
        if(Datum == 01.12.03) zeige Bild(01.12.03)
        if(Datum == 02.12.03) zeige Bild(02.12.03)
        machen.

        Du kennst offenbar SWITCH/CASE noch nicht.
        Das waere IMHO etwas sinnvoller als 26 IF.
        http://www.php.net/manual/de/control-structures.switch.php

        Wahrscheinlich waere aber ein assoziatives Array die einfachste Loesung:

        $bildurl["01.12.03"]="njfekafrap.jpg";
        u.s.w.

        Gruesse,

        Thomas

        1. Hallo,

          Du kennst offenbar SWITCH/CASE noch nicht.
          Das waere IMHO etwas sinnvoller als 26 IF.
          http://www.php.net/manual/de/control-structures.switch.php

          Nein kannte ich noch nicht, aber danke für den hinweiß jetzt kenne ich ihn.

          Wahrscheinlich waere aber ein assoziatives Array die einfachste Loesung:
          $bildurl["01.12.03"]="njfekafrap.jpg";

          Dankeschön, genau so habe ich das jetzt gelöst. Hat zwar jetzt zwei tage gedauert, bis ich herausgefunden habe wie das ganze geht, aber jetzt geht es. Zu bewundern dann ab dem 01.12. auf http://www.vivosomuertos.de

          Jetzt hat mich mein Bruder darauf aufmerksamm gemacht, dass sich ja einer Die Bilder 30 oder 70 mal ausdrucken könnte, und sie dann für die Hälfte vom Eintrittspreis vor der Tür verkaufen könnte. Dem will ich jetzt mit einem Anmeldesystem entgegenwirken. Wenn man da mitspielen will, muss man:

          1. alle Bilder haben
          2. Sich wenigstens einmal während des Monats in unsere Datenbank mit Namen und gültiger E-Mailadresse eintragen. Dann bekommt man eine Bestätigungsmail mit einem Link mit einem Sicherheitscode Diesen muss man dann betätigen, oder in die Adresszeile seines Browsers einfügen und abschicken. Nur die, die ihren Eintrag bestätigt haben, können mitmachen, alle anderen nicht.

          Da gibt es sicherlich noch große Lücken in diesem System, aber da müssten sich die Leute wirklich richtig organisieren, um uns richtig zu schaden, deshalb lass ich das jetzt mal so.

          Grüße
          Jeena Paradies

          --
          "Of course it does not work, but look how fast it is!"
          1. Hallo,

            Ich weiß nicht ob es noch interresiert, aber ich habe ja versprochen, dass ich den Quellcode online stelle. Das Script funktioniert und ist fertig. Ich habe es jetzt auch mal testweise auf November statt Dezember eingestellt um zu gucken, ob auch alles so funktioniert wie ich mir das gedacht habe Anzugucken unter: http://jeenaparadies.clever-webspace.de/vivosomuertos/advent/

            Vieleicht kann der Eine oder andere es mal testen und sich eintragen. Danach wäre ich froh über Feedback.

            Es ist noch alles sehr wüst, und die Namen für die Variablen sind manchmal mehr als intuitiv, aber ich denke man kann schon durchblicken, und es für sich selbst anpassen.

            ################### adventkalender.php ###################### <?php $datum = getdate(); $tag   = $datum['mday']; $monat = $datum['mon']; $dez   = 12; $sieb  = 27;

            ?>

            <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Adventkalender</title> <?php if ($monat == $dez and $tag < $sieb)  {   echo '<link rel="stylesheet" type="text/css" href="format.css">';   $bilder["1"] = "01.jpg";   $bilder["2"] = "02.jpg";   $bilder["3"] = "03.jpg";   $bilder["4"] = "04.jpg";   $bilder["5"] = "05.jpg";   $bilder["6"] = "06.jpg";   $bilder["7"] = "07.jpg";   $bilder["8"] = "08.jpg";   $bilder["9"] = "09.jpg";   $bilder["10"] = "10.jpg";   $bilder["11"] = "11.jpg";   $bilder["12"] = "12.jpg";   $bilder["13"] = "13.jpg";   $bilder["14"] = "14.jpg";   $bilder["15"] = "15.jpg";   $bilder["16"] = "16.jpg";   $bilder["17"] = "17.jpg";   $bilder["18"] = "18.jpg";   $bilder["19"] = "19.jpg";   $bilder["20"] = "20.jpg";   $bilder["21"] = "21.jpg";   $bilder["22"] = "22.jpg";   $bilder["23"] = "23.jpg";   $bilder["24"] = "24.jpg";   $bilder["25"] = "25.jpg";   $bilder["26"] = "26.jpg";  }  else  {   echo '<meta http-equiv="refresh" content="5; URL=http://home.arcor.de/vivosomuertos/neu/home/main.htm">';  } ?> </head> <body> <?php if ($monat == $dez and $tag < $sieb)  {  echo "<img src="".$bilder["$tag"]."" style="float:right">";  if ($monat == $dez and $tag < $sieb - 1)   {

            // ----------------------------- ANFANG Bestigung ----------- @mysql_connect(localhost, username, passwort) OR  die("<h2>Keine Verbindung zur Datenbank.</h2><p>Versuche es später nocheinmal oder schreib dem Webmaster eine E-Mail: <a href="mailto:info@vivosomuertos.de">info@vivosomuertos.de</a></p> Fehlermeldung: ".mysql_error()); mysql_select_db( vivosomuertos ) OR  die("<h2>Konnte Datenbank nicht benutzen.</h2><p>Versuche es später nocheinmal oder schreib dem Webmaster eine E-Mail: <a href="mailto:info@vivosomuertos.de">info@vivosomuertos.de</a></p> Fehlermeldung: ".mysql_error());

            if (isset($_POST["form_submitted"]))  {   $name = $_POST['name'];   $email = $_POST['email'];

            // check if email exists   $checkfrei  = "SELECT frei FROM advent WHERE email = '".$email."'";   $resultfrei = mysql_query($checkfrei) OR die(mysql_error());   if($resultfrei)    {     $reihe = mysql_fetch_assoc($resultfrei);     if(mysql_num_rows($resultfrei) != 0)     {      if($reihe['frei'] == 2)       {        echo "$email <p>Diese E-Mail Adresse wurde bereits bei uns registriert und freigeschalten.</p>\n";        include("foot.tpl");        exit;       }      else      {       echo "$email <p>Diese E-Mail Adresse wurde bereits bei uns registriert aber noch nicht freigeschalten.</p>\n";       include("foot.tpl");       exit;      }     }    }

            $mail_subject = "Bestätigung Adventskalender Vivos O Muertos";   $emailcoded = urlencode($email);   $id = rand(1000,9999);   $text = "Du - oder jemand anderes - hast dich für unseren Adventskalender von\nhttp://www.vivosomuertos.de angemeldet. Um mitzumachen klick doch\nbitte auf den Bestätigungs-Link oder kopiere ihn in die Adresszeile\ndeines Browsers und schicke ihn ab:\n\nhttp://www.jeenaparadies.clever-webspace.de/vivos/adventskalender-eintragen.php?email=$emailcoded&id=$id\n\nFalls du es nciht warst der mitmachen wollte, oder doch nicht mitmachen willst\nbrauchst du nichts zu tun. Du kannst diese E-Mail ignorieren und löschen.\nDann werden deine Daten zum 27.12.03 gelöscht \nund diese E-Mail Adresse wird für das Mitmachen am Adventskalender gesperrt um Spam zu vermeiden. \n\nGrüße von den Vivos O Muertos!";   unset($errors);   if ($name == "") $errors[] = "es wurde kein Name eingegeben";   if ($email == "") $errors[] = "es wurde keine E-Mail Adresse eingegeben";   if ($email != "" and !preg_match("/[1]+@.+.\D{2,5}$/", $email)) $errors[] = "die E-Mail Adresse sieht nicht richtig aus";

            if (empty($errors))    {     $sql = "INSERT INTO advent (name, email, frei, datum, id)             VALUES               ( '".htmlspecialchars($_POST['name'])."',                 '".htmlspecialchars($_POST['email'])."',                 '1',                 NOW(),                 '$id')";     mysql_query($sql) OR die(mysql_error());     echo "<p>Vielen Dank für ihren Eintrag. Es wurde soeben eine Bestätigungsmail an dich geschickt. Erst wenn du dort auf den Bestätigungslink klickst, wirst du in den Adventskalender aufgenommen.</p>\n";

            $ip = $_SERVER["REMOTE_ADDR"];     $text = stripslashes($text);     $header= "From: Vivos O Muertos info@vivosomuertos.de\n";     $header .= "Reply-To: Vivos O Muertos info@vivosomuertos.de\n";     $header .= "X-Mailer: PHP/" . phpversion(). "\n";     $header .= "X-Sender-IP: $ip\n";     $header .= "Content-Type: text/plain";     if (@mail($email, $mail_subject, $text, $header)) { $sent = true; } else { $errors[] = "keine Verbindung zum Mailserver - bitte nochmal versuchen"; }  }  }

            if (empty($sent))  {   if(isset($errors))    {     ?>     <p class="caution">Fehler:</p><ul><?php foreach($errors as $f) { ?><li><?php echo $f; ?></li><?php } ?></ul><br /><?php } ?>

            <h2 style="color:white; text-align:center;">Adventskalender</h2>     <p style="margin: padding: 10%;">     ACHTUNG! Weihnachten wude wegen den Vivos O Muertos dieses Jahr auf den     26.12.03 verlegt, und wird ausschließlich im Zebra - Hausen ab 20:00 Uhr     gefeiert.</p>    <p style="margin: padding: 10%;">     Deshalb gibt es bei uns auch einen EXTRAGROßEN Adventskalender, der aus     sage und schreibe 26 in Worten sechsundzwanzig Türchen besteht. Jeden Tag     gibt es ein neues überraschendes Bild von uns.</p>    <p style="margin: padding: 10%;">     Wer alle Bildchen sammelt, ausdruckt und mit zum Weihnachtskonzert     bringt bekommt freien Eintritt und zwei Jagdbitter extra. Ihr müsst euch     aber einmal in unserer Datenbank verewigen. Ihr müsst eine funktionierende     E-Mail Adresse angeben, da ihr dann eine Bestätigungsmail bekommt, den     ihr bestätigen müsst um mitmachen zu können. Dies geht nur bis zum     25.12.03 Am 26.12. geht es nciht mehr, da wir die Liste ja auch irgendwann     ausdrucken müssen.</p>    <p style="margin: padding: 10%;">     Und jetzt viel Spaß beim Sammeln und rocken!!!</p>    <form method="post" action="<?php echo basename($_SERVER["PHP_SELF"]); ?>" >     <table>      <tr>       <td>Name: </td>       <td align="left"><input type="text" name="name" value="<?php if (isset($name)) echo htmlentities(stripslashes($name)); else echo ""; ?>"></td>        </tr>        <tr>         <td>E-Mail: </td>         <td align="right"><input type="text" name="email" value="<?php if (isset($email)) echo htmlentities(stripslashes($email)); else echo ""; ?>"> <input type="submit" name="form_submitted" value="Mitmachen"></td>        </tr>        </table>    </form> <?php  } else  {   ?><p>Bestätigungs-E-Mail erfolgreich versendet.</p>   <?php  } mysql_close(); // ----------------------------- ENDE Bestigung -----------

            }  } else  {  echo '<p>Hier klicken um weitergeleitet zu werden <a href="home.arcor.de/vivosomuertos/neu/home/main.htm">Hauptseite</a></p>';  } ?>

            </body> </html>

            ################### adventkalender-eintrag.php ###################### <html> <head> <title>Adventskalender eintragen - Vivos O Muertos</tite> </head> <body> <?php $email = $_GET["email"]; $savety = $_GET["id"]; $email = urldecode($email);

            @mysql_connect(localhost, username, passwort) OR  die("<h2>Keine Verbindung zur Datenbank.</h2><p>Versuche es später nocheinmal oder schreib dem Webmaster eine E-Mail: <a href="mailto:info@vivosomuertos.de">info@vivosomuertos.de</a></p> Fehlermeldung: ".mysql_error()); mysql_select_db( vivosomuertos ) OR  die("<h2>Konnte Datenbank nicht benutzen.</h2><p>Versuche es später nocheinmal oder schreib dem Webmaster eine E-Mail: <a href="mailto:info@vivosomuertos.de">info@vivosomuertos.de</a></p> Fehlermeldung: ".mysql_error());

            $checkfrei  = "SELECT id FROM advent WHERE email = '".$email."'";   $resultfrei = mysql_query($checkfrei) OR die(mysql_error());

            if($resultfrei)  {  $reihe = mysql_fetch_assoc($resultfrei);  if($reihe['id'] == $savety)   {    $sql = "UPDATE advent SET frei = '2' WHERE email = '$email'";    mysql_query($sql) OR die(mysql_error());    echo $email;    echo "<p>Die Anmeldung war erfolgreich.</p>";   }  else { echo "Der Sicherheitscode passt nicht mit dem gespeicherten überin<br>"; }  } else { echo "Ich habe leider keinen Sicherheitscode gefunden, bitte versuche noch einmal den ganzen Link zu kopieren"; } include("foot.tpl"); ?>

            ################### foot.tpl ###################### </body> </html>

            Grüße Jeena Paradies

            --
            "Of course it does not work, but look how fast it is!"

            1. ^@ ↩︎

            1. Hallo.

              $bilder["1"] = "01.jpg";
                $bilder["2"] = "02.jpg";
                $bilder["3"] = "03.jpg";

              [...]

              $bilder["26"] = "26.jpg";

              Du hängst immer nur ein ".jpg" an und fügst bei einstelligen Zahlen eine führende "0" hinzu. Gibt es dafür keine elegantere -- will heißen: algorithmische -- Lösung? Da kann man direkt froh sein, dass die Adventzeit so kurz ist ;-)
              MfG, at

              1. Hallo,

                Du hängst immer nur ein ".jpg" an und fügst bei einstelligen Zahlen eine führende "0" hinzu. Gibt es dafür keine elegantere -- will heißen: algorithmische -- Lösung? Da kann man direkt froh sein, dass die Adventzeit so kurz ist ;-)

                Naja das ist jetzt noch so da ich noch gar keine 26 Bilder habe. Wenn ich alle habe werde ich mit der .htacess die indexierung verbieten, und die bilder kriegen ganz zufällige Namen wie

                $bilder["1"] = jfkdslaö.jpg
                $bilder["2"] = dskalfödsöla34.jpg
                $bilder["3"] = asdtö4qt432.jpg
                $bilder["4"] = 4q3rtjk43qtklqth.jpg

                Jetzt ist es nur der einfachheit halber so gemacht. Da muss ich machen, denn sonst wird mir jemand einfach das verheichniss [...]/advent/ aufrufen und sich alle Bilder speichern. Schon muss er nicht jeden Tag auf unsere Seite und hat trotzdem freien Eintritt zu unserem Konzert. Das geht natürlich nicht man muss schon was dafür tun.

                Grüße
                Jeena Paradies

                --
                "Of course it does not work, but look how fast it is!"
                1. Hallo.

                  Jetzt ist es nur der einfachheit halber so gemacht. Da muss ich machen, denn sonst wird mir jemand einfach das verheichniss [...]/advent/ aufrufen und sich alle Bilder speichern. Schon muss er nicht jeden Tag auf unsere Seite und hat trotzdem freien Eintritt zu unserem Konzert. Das geht natürlich nicht man muss schon was dafür tun.

                  Aber auch und gerade eine solche Verschlüsselung schreit doch geradezu nach einem Algorithmus -- später natürlich, wenn noch Zeit bleibt.
                  MfG, at

                  1. Hallo,

                    Aber auch und gerade eine solche Verschlüsselung schreit doch geradezu nach einem Algorithmus -- später natürlich, wenn noch Zeit bleibt.

                    Hm ich kann mir nicht so richtig vorstellen wie das gehen soll.

                    Grüße
                    Jeena Paradies

                    --
                    "Of course it does not work, but look how fast it is!"
                    1. Hallo.

                      Hm ich kann mir nicht so richtig vorstellen wie das gehen soll.

                      Damit wäre ich im Gegesatz zu vielen anderen hier auch überfragt, aber noch weniger kann ich mir vorstellen, dass es nicht gehen soll :-)
                      MfG, at