HP-Teacher: Textfelder überprüfen lassen

Beitrag lesen

Hallo Berta

Ich würde das so angehen...

Zuerst machst du auf dem Server eine csv-Datei. Das Heißt du nimmst dein Wordpad oder Editor und schreibst folgendes hinein:

laufen,walk
singen,sing
tanzen,dance
fangen,catch
usw..

Also je ein deutsches und ein englisches Wort getrennt durch ein Komma.
Dann speicherst du die Datei unter bsp. "learn-file.csv". Falls du das Speicherformat wählen kannst, wähle utf-8 aus!

Diese Datei speicherst du auf dem Server z. B. im Ordner cgi-bin.
Damit wäre deine Abfragedatei fertig.

Jetzt brauchst du noch ein Skript, welches du auf dem Server im Ordner cgi.bin ablegen musst. Ich mach sowas in Perl - kann kein PHP. Das PHP läuft aber ähnlich ab, wie bei der Perl-Version.

Vom Ablauf:
Zuerst brauchst du eine .shtml-Seite. Shtml bedeutet, das dein Html-Dokument nicht mit ".html" endet, sondern mit ".shtml". Speichern tust du das auf dem Server im Ordner httpdocs.
In diesem Dokument kommt dann irgendwo an geeigneter Stelle der Befehl:

<!--#exec cgi="/cgi-bin/mein-vokabel-trainer.php" -->

Diese Zeile wird bei Seitenaufruf dein php-Skript starten und dort kannst du dann mittels dem Skript "mein-vokabel-trainer.php" deine aufrufende Seite dynamisch ergänzen. D.h. du kannst mit einem Zufallsgenerator eine Zeile aus der "learn-file.csv auslesen (Perl z.B. $zufall = int(rand(n));), oder den gesamten Inhalt der "learn-file.csv" abfragen lassen.

Du gibst dir dann eine html-Seite mit einem Formular, so wie bei niklaskamenisch aus. In hidden steht die richtige Vokabel. Im Input Feld deine Angabe.

Bei Absenden mit Form-action gibst du den Pfad zum zweiten php-Skript an, der deine Antwort auswertet. Dieses Skript prüft, ob deine Antwort mit dem im Hiddenfeld übereinstimmt oder nicht -simpelste If Abfrage.

Ansonsten möchte ich mich dem zweiten Teil der aussage von Bleicher anschließen: Wennman das noch nie gemacht hat, ist der Overhead für den vermeintlichen Nutzen unverhältnismäßig groß. Außer du willst Skripten und shtml lernen :)

Gruß HP-Teacher

PS: Für Mitleser:
Der Zufallsgenerator in Perl "$zufall = int(rand(n));" gibt Zufallszahlen im Bereich von wo noch mal aus? Wenn n=11 von 1 bis 10 oder 0 bis 10? Oder doch bis elf? Ich habs vergessen :-(