hoose: Formular abschicken Anzahl begrenzen

Hallo,

kann mir jemand sagen ob es möglich ist Formulare nur in begrenzter Anzahl abzuschicken.
Ich möchte ein Formular für einen Kurs mit begrenzter Teilnehmerzahl anbieten,
wenn zum Beispiel der Zehnte das Formular abgesendet hat, sollte beim Elften das Formular nicht mehr angezeigt oder nicht mehr versendet werden.

Ist so was machbar oder gibts dafür fertige Script ober Programme?

Danke schon mal!

  1. Hallo hoose,

    kann mir jemand sagen ob es möglich ist Formulare nur in begrenzter Anzahl abzuschicken.

    Du mußt einfach irgendwo, in einer Datei oder einer Datenbank, einen Zähler speichern, der bei jedem Absenden des Formulars um eins hochgezählt wird. Diesen kannst Du dann vor der Ausgabe des Formulars abfragen. Ist er größer als ein von Dir vorgegebener Wert, wird statt dem Formular eben irgendeine Nachricht ausgegeben.

    Grüße aus Stockholm,
    Götz

    --
    Losung für Dienstag, 15. April 2008
    Träufelt, ihr Himmel, von oben, und ihr Wolken, regnet Gerechtigkeit! Die Erde tue sich auf und bringe Heil, und Gerechtigkeit wachse mit auf! Ich, der HERR, habe es geschaffen. (Jesaja 45,8)
    Jage nach der Gerechtigkeit, dem Glauben, der Liebe, dem Frieden mit allen, die den Herrn anrufen aus reinem Herzen. (2.Timotheus 2,22)
    (zur aktuellen Losung)
  2. Ist so was machbar oder gibts dafür fertige Script ober Programme?

    Eine Möglichkeit:

    Jedes Abschicken des Formulars (also die Daten) in Datenbank speichern. Bei Aufruf der Seite (und Einträge in Datenbank <10) wird Formular gezeigt, ansonsten Nachricht: Keine Freien Plätze mehr.

    Achtung: Eingaben müssen natürlich mit verschiedenen Methoden verifiziert werden, sonst mach u.U. _eine_ Person 10 Plätze in Deinem Kurs aus... ;)

    Gruß, Samoht

    --
    fl:| br:> va:) ls:< n4:( ss:) de:] js:| mo:}
    "Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."
    (Kristian Wilson, Nintendo, 1989)
    1. Achtung: Eingaben müssen natürlich mit verschiedenen Methoden verifiziert werden, sonst mach u.U. _eine_ Person 10 Plätze in Deinem Kurs aus... ;)

      Dann am besten den Absenden-Button noch nach einem Klick per Javascript deaktivieren. Cookie setzen, so das der User nicht noch einmal später sich von dem PC 'anmelden' kann.

      Aber nach meiner Meinung ist das etwas übertrieben. Mach doch lieber einen Counter daneben und geb aus, wie viele (von dir verifizierte Personen) Plätze schon besetzt sind.

      1. Aber nach meiner Meinung ist das etwas übertrieben. Mach doch lieber einen Counter daneben und geb aus, wie viele (von dir verifizierte Personen) Plätze schon besetzt sind.

        Naja, hängt vom Umfang ab. Wir wissen weder um wieviele Kurse es geht, noch um wieviele Eingabefelder. Es ging ums Prinzip denk ich... Ich jedenfalls hätte das sofort mit ner Datenbank umgesetzt, weil ich dann gleich alles "ordentlich" habe...

        Oder worauf wolltest Du hinaus mit "übertrieben"?

        Gruß, Samoht

        --
        fl:| br:> va:) ls:< n4:( ss:) de:] js:| mo:}
        "Computer games don't affect kids; I mean if Pac-Man affected us as kids, we'd all be running around in darkened rooms, munching magic pills and listening to repetitive electronic music."
        (Kristian Wilson, Nintendo, 1989)
        1. Oder worauf wolltest Du hinaus mit "übertrieben"?

          Damit meinte ich nur das Sperren des Formulares. Weil du kannst dir ja nie sicher sein, dass die Eingaben wirklich richtig sind und somit würdest du das Formular sperren obwohl noch Plätze frei sind.

          In der Datenbank die Daten speichern finde ich völlig richtig. Dann gleich noch ein kleines Script schreiben, womit du dir die Daten angucken kannst und validieren oder löschen. Wenn dann das Maximum für den Kurs erreicht ist, kannst du per eMail diese Leute eine Bestätigung für den Kurs schicken und den restlichen, die Anzahl der Warteplatznummer. Falls einer abspringt, wäre dann der nächste mit Warteplatznummer 1 dran und so weiter.

          Viele Grüße,
          Jurik

  3. Hello,

    wenn Du Dir einen Gefallen tun willst, dann beschäftigst Du Dich mit dem "Affenformular".

    Außerdem speicherst Du jeden, der sich anmelden will.
    Ab der 10ten (geprüften) Eintragung gibst Du dann die Antwort: "Sie wurden auf die Warteliste gesetzt und werden kurzfristig informiert, wenn noch ein Platz frei ist" .. oder ähnlich, denn erstens gibt es Irrtümer, zweitens Rücktritte und drittens viele Spammer, die mit Vorliebe Formulare bespammen. Wäre dich ärgerlich, wenn in Deinem Kursus nachher 5 Plätze frei blieben, nur weil da jemand Viagra liefern wollte.

    Außerdem kann man solche kleinen Datenmengen wunderbar in Flat-Files speichern und kontrollieren. In PHP bietet sich an, dies als serialisiertes Array zu tun.

    Mit den Funktionen serialize() und unserialize()
    http://de2.php.net/manual/en/function.serialize.php
    kannst Du die Daten wunderbar separieren und musst Dir keine Gedanken über Datentypen machen.

    Bitte beschäftige Dich auch mit der Funktion flock()
    http://de2.php.net/manual/en/function.flock.php
    und dem Artikel con Christian Seiler:
    http://aktuell.de.selfhtml.org/artikel/programmiertechnik/dateisperren/index.htm
    damit Deine Daten auch erhalten bleiben.

    Um maschinelle Spammer abzuhalten, reicht es meistens, ein Eingabefeld zu haben, dessen komplexeres Eingabeformat geprüft wird und dessen Formatierung dem menschlichen Eingebenden als Beispiel gezeigt wird.

    Z.B. Bitte geben Sie das _morgige_ Datum im Format TT.MM.JJJJ ein

    Da hast Du dann zwei Möglichkeiten der Überprüfung, die sich multiplizieren, nämlich das Format und das Datum. Ist natürlich dann irgendwie logisch, dass man die Zeitzone kennen muss. Aber aus Peking werden Deine teilnehmer ja nicht unbedingt kommen, oder? :-))

    Vergiss nicht, den Teilnehmer darauf hinzuweisen, dass seine Daten elektronisch gespeichert und (betriebsintern) weiterverarbeitet werden. Ist zwar eigentlich logisch, sollte man aber trotzdem tun.

    Ein harzliches Glückauf

    Tom vom Berg

    http://bergpost.annerschbarrich.de
    .

    --
    Nur selber lernen macht schlau