# Vokabeltrainer



## DaRula (17. Dezember 2002)

hi,
ich hatte mal vor mir nen Vokabeltrainer mit PHP zu batseln.
Nun weiß ich aber nicht genau weiter.
Meine tabelle sieht so aus:

```
ID|VOKABELDE|VOKABELLA|HILFE           |LEKTION
 1|sehen    |videre   |veni, vidi, vici|1
```
Ich weiß, wie man eine Zufällige vokabel ausgibt, aber wie mach ich
das nun mit dem vergleichen? die ID beim formular weitergeben und
dann die deutsche vokabel zum gesuchten auslesen und dann per
if-abfrage vergleichen? mmh...jetzt wo ichs aufschreib wirds mir
klarer, aber wie würdet ihr das machen?


----------



## socKe|bla (17. Dezember 2002)

solltest du mit dem cursus continuus zu tun haben, benutz meinen ^^
http://latein.sockn.de


----------



## DaRula (17. Dezember 2002)

mir gehts nich ums vokabelnlernen an sich, sondern ums script. so in der art hab ichs mir aber auch gedacht. aber nach welchen prinzip funtzt das denn nun? Wie hast du das gemacht?


----------



## Flex (17. Dezember 2002)

Also, ich würde die Vokabel aus der MySQL Tabelle auslesen, beide Versionen...

Nun schreibst du die eine hin, gibst ihm ein Input Feld für die Übersetzung und die übersetzte Version schreibst in ein Hidden Field... Auf der nächsten Seite vergleichst du die beiden, wenn richtig kommt die nächste Vokabel wenn falsch die korrekte Antwort...


----------



## socKe|bla (17. Dezember 2002)

jep, entweder mit nem hidden field oder mit sessions...
ich habs übrigens mit sessions gemacht, weil mein script ja ein bissl komplizierter ist mit dem vokal aussortieren etc...


----------



## DaRula (17. Dezember 2002)

mmh..ich denke ich werde sessions nutzen, denn wenn man erstmal dahinter kommt, dass man es so nachsehen kann betrügt man sich wahrscheinlich selbst


----------



## sam (17. Dezember 2002)

> _Original geschrieben von socKe|bla _
> *solltest du mit dem cursus continuus zu tun haben, benutz meinen ^^
> http://latein.sockn.de *


sehr fein...
ich kann noch 90% von den vokabeln, obwohl's schon 2 jahre her ist  
ich bin ein genie  

hast du da ALLE vokabeln eingetragen?
hast du zuviel zeit?


----------



## DaRula (17. Dezember 2002)

mmh, aber wie mach ich das, dass jede vokabel nur einmal drankommt?


----------



## DaRula (17. Dezember 2002)

muss ich dann jede vokabel in der session speichern und überprüfen, ob sie bereits dran war?


----------



## socKe|bla (18. Dezember 2002)

sam: fein fein, ich kann davon nur die erste und zweite lektion... die vokabeln sind übrigens nicht von mir eingetragen, die sind von so ner idiotischen lernsoftware die mir meine eltern geholt haben, damit ich von meiner 5-6 runter komm. da waren die vokabeln als excel tabelle gespeichert ^^
übrigens würd ich keinem empfehlen sich die software zu dem buch zu holen, die ist nämlich total schlecht...


so, aber nochmal was produktives schreiben...
also, bei mir werden alle vokabeln ausgelesen, die zu der abzufragenden lektion gehören. das wird alles schön in ein array gepackt, in dem dann alles drin ist, deutsche bedeutung, lateinisches wort, alles halt...
das array wird dann in ne session gepackt und dann wird abgefragt 

um dir ein bissl auf die sprünge zu helfen hier mal der code...

```
function ladeVokabeln($lektion,$randomize){
    include("dbconnect.php");
    $abfrage = "SELECT * FROM $lateintable WHERE lekt = $lektion ORDER BY ";
    $abfrage .= $randomize ? "RAND()" : "gform";
    $ergebnis = mysql_query($abfrage);
    for($i=0;$row = mysql_fetch_object($ergebnis);$i++) {
      $vokabeln[$i][id] = $row->id;
      $vokabeln[$i][gform] = $row->gform;
      $vokabeln[$i][sform] = $row->sform;
      $vokabeln[$i][geschl] = $row->geschl;
      $vokabeln[$i][bedtg] = $row->bedtg;
    }
    mysql_close($verbindung);
    $_SESSION['vokabeln'] = $vokabeln;
  }
```

wenn du bei dem 2. argument bei der funktion true angibst werden die vokabeln gemischt und bei false nach dem alphabet geordnet 
hoffe du kriegst das nu gebacken, hochachtungsvoll Prof. Dr. Med socKe


----------



## DaRula (18. Dezember 2002)

thx ich hoffe, dass es nu klappt


----------



## DaRula (18. Dezember 2002)

bekomm ich nich gebacken, ich weiß ncih, wie ich mit der function umgehen muss. habs noch nie vorher was mit function gemacht


----------



## DaRula (18. Dezember 2002)

und wie bekomm ich das in die session?


----------



## socKe|bla (18. Dezember 2002)

uff, wenn du dich nicht mit sessions und funktionen auskennst, dann mach besser erst mal was anderes als nen vokabeltrainer....
sorry, aber da benutzt noch ganz anderes zeugs, sieht nur auf den erste blick so einfach aus...


----------



## DaRula (18. Dezember 2002)

sessions kenn ich schon nru nicht in verbindung mit functionen


----------



## socKe|bla (18. Dezember 2002)

wie in verbindung mit funktionen??
hier $_SESSION['vokabeln'] = $vokabeln; an dieser stelle wird alles ausgelesene in die session geschaufelt und fertig. du startest einfach vorher ne session, dann rufst du die funktion auf und dann kannst du einfach mit $_SESSION['vokabeln'][lektionsnr][gform] auf die vokabeln zugreifen...


----------



## DaRula (19. Dezember 2002)

Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING mmh :/ bzw Fatal error: Call to undefined function: ladevokabeln()


----------



## socKe|bla (19. Dezember 2002)

das v in ladeVokabeln wird auch groß geschrieben


----------



## DaRula (19. Dezember 2002)

ist groß geschrieben. SChreib mal wie du das ausließt plz


----------



## socKe|bla (19. Dezember 2002)

hier mal verkürzt...

```
session_start();
ladeVokabeln($_POST['lektionselect'],1);
```


----------



## DaRula (19. Dezember 2002)

immernoch Fatal error: Call to undefined function: ladevokabeln() obwohl ich ladeVokabeln geschreiben habe


----------



## socKe|bla (20. Dezember 2002)

hmm, du definierst die funktion aber vor dem aufrufen, oder?


----------

