Thomas Bäuml: Technisches Problem bei CGI/Perl etc.

Ich will auf meiner Website (es geht um Geschichte) ein Quiz veranstalten, bei dem man auch etwas gewinnen kann, wenn man besonders viel weiß.

Und zwar soll es so ablaufen: Das Quiz besteht aus einem Formular (Drop- Downmenüs, Checkbuttons). Für jede richtige Antwort soll es einen Punkt geben. Der User hat 10 Minuten Zeit die Fragen zu beantworten. Danach ist Schluss und die Ergebnisse (Punkte) sollen zusammengezählt werden. Der User soll nun eine Liste bekommen, was er falsch oder richtig beantwortet hat. Das Ergebnis, sowie Name und e-mail-Adresse des Users werden in eine Liste (Datenbank) eingegeben, in der alle Teilnehmer am Quiz aufgelistet werden. Am Ende des Monates bekommen die ersten drei auf der Liste einen Preis zugesannt (hoffe ich mal).

Meine Frage etwas genauer: Wie richte ich die 10 Minuten Sperre ein? Wie kann ich die Punkte zusammenzählen und in eine solche Liste eintragen lassen.

Kann mir jemand bei der Erstellung der Sache helfen? Kennt jemand eine Seite wo steht, wie das geht? Was benötig ich für Software? Bis jetzt wurde ich nicht fündig.

Für eine Antwort wäre ich sehr dankbar!!

  1. Hallo Thomas,

    () das hört sich nach "Gewinnspiel" an,
    du solltest _unbedingt_ VORHER auch einen Anwalt befragen,
    sonst lernst du bald wie eine Abmahnung aussieht.

    Es ist nicht so einfach Gewinnspiele so zu veranstalten, das es auch legal ist.

    Mein Tip: www.afs-rechtsanwaelte.de

    () Das mit den 10 Minuten,
    das ist doch ganz einfach mach es wie bei einem Shop mit einer Trackingnummer, die vergibst du beim Eintritt merkst dir den timestamp dazu und schon hast du es.

    cu
    F.Heyer

  2. Hallo !

    Ein Satz macht mich stutzig :

    Am Ende des Monates bekommen die ersten drei auf der Liste einen Preis zugesannt (hoffe ich mal).

    1. SCNR : 'zugesannt' ? zugesandt oder zugesendet (hoffe ich doch)

    2. Was verstehst du unter ERSTEN drei, wenn z.B. 4 Leute alle 10 Fragen beantwortet haben?

    Gruß,
    kerki

  3. Hi,

    Meine Frage etwas genauer: Wie richte ich die 10 Minuten Sperre ein?

    Das würde mich auch interessieren.

    Was immer Du probierst, Du wirst kaum verhindern können, daß ich
      a) mich unter einem falschen Namen anmelde,
      b) die Fragen lese und ausdrucke,
      c) länger als 10 Minuten darüber nachdenke,
      d) mich unter einem richtigen Namen nochmal anmelde und
      e) die Lösungen eintippe.
    Ergo: Streiche Realzeitbeschränkung.

    mfG - Michael

    1. Hi,

      Meine Frage etwas genauer: Wie richte ich die 10 Minuten Sperre ein?

      Das würde mich auch interessieren.

      Was immer Du probierst, Du wirst kaum verhindern können, daß ich
        a) mich unter einem falschen Namen anmelde,
        b) die Fragen lese und ausdrucke,
        c) länger als 10 Minuten darüber nachdenke,
        d) mich unter einem richtigen Namen nochmal anmelde und
        e) die Lösungen eintippe.
      Ergo: Streiche Realzeitbeschränkung.

      mfG - Michael

      Hallo,

      ja, darüber habe ich mir natürlich auch schon Gedanken gemacht. Allerdings wenn ich die Zeitbegrenzung streiche ist die Sache ja nahezu hirnrissig. Wer wirklich alle Fragen beantworten will nimmt sich ein Lexikon zur Hand und schaut alles nach. Wenn ich viele Besucher auf meiner Seite habe, die das tun, kann ich das Quiz einstellen.

      Eine Frage habe ich da: Weiß jemand, wie man nachprüfen kann, wie lange jemand auf der Seite war, per Formularmailer?

      Im übrigen habe ich bemerkt, dass mir per Formulamailer immer der richtige Name und die richtige Mailadresse des Users zugesandt wird, das mit dem falschen Namen kann man also unterbinden...

      1. Hi,

        Ergo: Streiche Realzeitbeschränkung.
        Wenn ich viele Besucher auf meiner Seite habe, die das tun, kann ich das Quiz einstellen.

        Richtig - genau das ist die Reaktion, die ich auch vorschlagen würde.
        Ein Quiz, das so leicht ist, daß man es mit einem Lexikon lösen kann, kannst Du vergessen - und Zeitdruck geht nun mal nicht, vor allem, weil ich beliebig oft mitten drin abbrechen und wieder vorne anfangen könnte, selbst *wenn* Du mich unter Zeitdruck setzen könntest! Ich muß ja keine Mail für einen der ersten Versuche wirklich absenden ...

        Falls Du übrigens mal ein *wirklich* schweres Rätsel sehen willst: Das "schwerste Rätsel Deutschlands" läuft gerade wieder (http://www.sz-magazin.de/). Der "Zeitdruck" besteht im Abgabetermin nach drei Wochen - und das ist *verdammt* hart, kann ich Dir sagen (ich mache seit fast 10 Jahren dort mit).

        Eine Frage habe ich da: Weiß jemand, wie man nachprüfen kann, wie lange jemand auf der Seite war, per Formularmailer?

        Überhaupt nicht. Der Form-Mailer hat keine Kamera in meinem Zimmer stehen.
        Du könntest per Cookies ein Transaktionsprotokoll implementieren. Das ist die Sache in Deinem Falle m. E. aber nicht wert.

        Im übrigen habe ich bemerkt, dass mir per Formulamailer immer der richtige Name und die richtige Mailadresse des Users zugesandt wird, das mit dem falschen Namen kann man also unterbinden...

        Glaubst Du etwa, der Formmailer kann Gedanken lesen? Na also ... ;-)
        Woher nimmt er folglich den Namen und die Adresse? Richtig - aus der Konfiguration meines Browsers natürlich. Herzlichen Glückwunsch.

        mfG - Michael

        1. Hallo.

          Dein Problem hat was mit dem statuslosen Protokoll HTTP und SessionIDs zu tun. Am besten löst Du das mit cgi, indem du auf dem Server eine Datei anlegst, in der jeder Zugriff des Users auf das steuernde cgi-Script protokolliert wird. Dabei speicherst Du jedesmal die Zeit und kannst feststellen, wann die Zeit überschritten wurde.
          Das Problem ist nur, wie Du den einzelnen User identifizierst. (ip ist nicht eindeutig, wegen Proxy-Servern)
          Alternativ kannst Du das auch in hidden-fields in der HTML-Seite speichern, was aber sehr unsicher ist, wenn Du nicht den HTTP_REFERER zur Authentifikation des Reuqests verwendest.

          Im übrigen habe ich bemerkt, dass mir per Formulamailer immer der richtige Name und die richtige Mailadresse des Users zugesandt wird, das mit dem falschen Namen kann man also unterbinden...
          Glaubst Du etwa, der Formmailer kann Gedanken lesen? Na also ... ;-)
          Woher nimmt er folglich den Namen und die Adresse? Richtig - aus der Konfiguration meines Browsers natürlich. Herzlichen Glückwunsch.

          Gut, aber die Email stimmt, sonst wäre sie nicht versandt worden.

          Felix

    2. Hallo !

      Eventuell könnte man es gestalten, dass man 10 einzelne Seiten mit je nur 1 Frage hat, für deren Beantwortung man 1 min Zeit hat. Nur bei richtiger Antwort auf Frage 1 in der vorgegebenen Zeit kommt man weiter zur 2. Frage. u.s.w. ...

      Das sollte technisch lösbar sein.

      Dann kann man zwar immer noch fuschen, hat dafür dann aber wenigstens so viel Geduld und Ehrgeiz bewiesen, dass man vielleicht auch einen Preis verdient. ;-)

      Gruß,
      kerki