PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vokabel-Trainer


dpy232
08.12.2007, 16:01:42
Hallo,

ich hab ein kleines Problem mit meinem kleinen PHP-MySQL-Projekt.
Ich bin momentan dabei ein kleinen Vokabeltrainer zu schreiben.
DIe Vokabeln sind in einer Datenbank abgelegt.
Mein Problem ist, das ich das Formular in einer Funktion eingebettet hab. Ich kann auch ohne Probleme die Funktion aufrufen, aber leider wird der Eintrag nicht übernommen, den ich im Formular eingeragen habe.
Ich hab mit echo habe ich mit angeguckt, was ich aus dem Formular zurück gegeben bekomme. Aber leider gibt er nichts zurück.
Inzwischen hab ich keine Idee mehr, wo der Fehler liegen könnte. Dewegen die Bitte an euch, könnt ihr mir einen Tip geben, wo der Fehler liegt, oder was ich ändern muss, damit es geht?

function ausgabe_kasten($result1){
$row = mysql_fetch_assoc($this->result1);
echo "<form action=".$_SERVER[PHP_SELF]." method='POST'>";
echo "<div align='center'>";
echo "<table class='links'>";
echo "<tr>";
echo "<td>Deutsch:</td>";
echo "<td>$row[deutsch]</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Dänisch:</td>";
echo "<td><input type='Text' name='dansich' value='".$_REQUEST['danisch']."'></td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan='2'><input type='Submit' name='Senden' value='Senden'></td>";
echo "</tr>";
echo "</table>";

if ($_REQUEST[Senden] == "Senden")
{
echo "$_REQUEST[danisch]";
if ($_REQUEST['danisch'] == $row[danisch])
{
echo "richtig";
}
else
{
echo "Falsch";
}
}

//echo mysql_affected_rows()."<br>";

echo $row[danisch];
echo "</div>";
echo "</form>";
}



Vielen Dank schon mal im Vorraus

dpy232

vt1816
08.12.2007, 18:41:12
Willkommen hier im Forum!



function ausgabe_kasten($result1){
$row = mysql_fetch_assoc(result1);
echo "<form action=".$_SERVER['PHP_SELF']." method='POST'>";
echo "<div align='center'>";
echo "<table class='links'>";
echo "<tr>";
echo "<td>Deutsch:</td>";
echo "<td>$row['deutsch']</td>";
echo "</tr>";
echo "<tr>";
echo "<td>Dänisch:</td>";
echo "<td><input type='Text' name='dansich' value='".$_REQUEST['danisch']."'></td>";
echo "</tr>";
echo "<tr>";
echo "<td colspan='2'><input type='Submit' name='Senden' value='Senden'></td>";
echo "</tr>";
echo "</table>";

if ($_REQUEST['Senden'] == "Senden")
{
echo "$_REQUEST['danisch']";
if ($_REQUEST['danisch'] == $row['danisch'])
{
echo "richtig";
}
else
{
echo "Falsch";
}
}

//echo mysql_affected_rows()."<br>";

echo $row['danisch'];
echo "</div>";
echo "</form>";
}

dpy232
09.12.2007, 20:30:16
Hallo,

viel Dank für deine schnelle Antwort und die nette Begrüßung.

Ich hab deine Korrekturen mir mal angeguckt und auch ausprobiert, aber das Programm mag immer noch nicht :( Naja ich hab jetzt noch weiter ausprobiert und weiter gelesen, aber nichts sinnvolles, oder was mich weiterbringt gefunden.
Am Anfang hat er mir mehrere Fehlermeldungen ausgespuckt, die ich aber noch einigem Suchen beheben konnte.
Ein Fehler war in der Zeile:

$row = mysql_fetch_assoc($this->result1);

Da hattest du ja das $this-> weggenommen, aber da es in einer Klasse ist und das Ergebnis (result1) aus einer anderen Funktion kommt, wird es benötigt.
Mit den Hochkommer (') war eine echt dummer Fehler gebe ich zu! Dafür danke. Ich hab die jetzt in das Script eingefügt. Wunderbar keine Fehler mehr! Aber ....
Es geht immer noch nicht. Es ist das gleiche Problem, wie am Anfang. Ich kann das Script aufrufen, das richtige Wort eintragen und dann zeigt er mir Falsch an. Normalerweise sollte er in der if-Klausel an die richtige Stelle springen, macht er aber nicht, da aus dem

echo "<td><input type='Text' name='dansich' value='".$_REQUEST['danisch']."'></td>";

nichts ausgegeben wird!
Hat jemand eine Idee, wo der Fehler liegt, ich hab inzwischen keine gute Idee mehr. Mit lesen und ausprobieren bin ich nicht weitergekommen.
Also: Bitte helft mir!

Viel Dank schon mal im voraus

dpy232

dpy232
10.12.2007, 20:08:45
So, ich hab endlich den Fehler gefunden! Nur durch einen zufall hab ich einen einfachen dummen Rechtschreibfehler gefunden!
Trotzdem Danke für die Hilfe!

dpy232