Delphi-PRAXiS
Seite 1 von 7  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datenbank- Quiz programmieren (https://www.delphipraxis.net/203649-datenbank-quiz-programmieren.html)

Reedx 8. Mär 2020 14:43

Datenbank: Access • Version: office 16 • Zugriff über: OLEB Provider Microsoft Jet

Datenbank- Quiz programmieren
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallöchen, ich bins wieder, falls jemand meinen letzten Beitrag schon kennt. :-D
Ich muss am 17.3. mein Projekt in der Schule abgeben und fühle mich langsam gestresst.. hänge an einen Knackpunkt.
Wenn ich den habe, dann bin ich fast fertig. Hoffe auf eure Hilfe..:oops:


Bevor Fragen kommen, JA i hab ich schon oben deklariert als integer..
Mein Ziel ist es, dass die Fragen aus der Datenbank ausgelesen werden

Die Frage erscheint im Caption Feld von der Radio Group und die Antwortmöglichkeiten in den RadioButtons..
Nun soll beim Click auf 'nächste Frage' die nächste kommen, aber das passiert nicht..
es kommt keine Fehler meldung und das Programm läuft auch.. nur kommt halt keine neue Frage/bzw Antworten
Das einzige derzeit ist, dass die erste Frage zwar erscheint, aber die Antwortmöglichkeiten von einer anderen Frage stammen..

Programmieren liegt mir einfach nicht..

Ein Bild zur Vorstellung hänge ich wieder mit an!


hier der Quelltext:

Delphi-Quellcode:
procedure TFormle.ButtonnextClick(Sender: TObject);
var query:ANSIstring; i:integer;
begin

 if lb.ItemIndex >=0 then
 begin
    rg.Visible:=true;
    Datamodule1.ADOQuery6.SQL.Clear;
    Datamodule1.ADOQuery7.SQL.Clear;
    Datamodule1.ADOQuery6.SQL.Text:='SELECT Frage FROM Fragen WHERE Fach = ' +#39+lb.Items.Strings[lb.ItemIndex]+#39 +
             ' AND Schwierigkeit="1";';
    Datamodule1.ADOQuery6.Open;
    Datamodule1.ADOQuery7.SQL.Text:= 'SELECT L1, L2, L3 FROM Fragen WHERE Fach = ' +#39+lb.Items.Strings[lb.ItemIndex]+#39 +
                                    ' AND Schwierigkeit="1";';
    Datamodule1.ADOQuery7.Open;
for i:=0 to 10 do
while not (Datamodule1.ADOQuery6.Eof) and (Datamodule1.ADOQuery7.Eof) do


Datamodule1.ADOQuery6.Next;
Datamodule1.ADOQuery7.Next;

//Frage in "Titel"
rg.Caption:= Datamodule1.ADOQuery6.Fields[0].AsString;
//Antworten in Radiobuttons
rg.Items.Clear;
rg.Items.Add(Datamodule1.ADOQuery7.Fields[0].AsString);
rg.Items.Add(Datamodule1.ADOQuery7.Fields[1].AsString);
rg.Items.Add(Datamodule1.ADOQuery7.Fields[2].AsString);
i:=+1;
    end else
    begin
    application.MessageBox('Auswahlfehler!','Fehler');
    end;

end;

DieDolly 8. Mär 2020 14:49

AW: Datenbank- Quiz programmieren
 
Du hast da im Prinzip 0 Fehlerbehandlung drin. Damit fängt es schon an. Dann würde das korrekte Einrücken des Codes auch alles für dich verständlicher machen denke ich.
Wofür 2 Queries?

Ich gebe dir mal einen Tipp. Benutz mal die "Automatische Einrückung" (STRG+D). Vielleicht findest du einen der Fehler dann schon selber.

Reedx 8. Mär 2020 14:57

AW: Datenbank- Quiz programmieren
 
Zitat:

Zitat von DieDolly (Beitrag 1459151)
Du hast da im Prinzip 0 Fehlerbehandlung drin. Damit fängt es schon an. Dann würde das korrekte Einrücken des Codes auch alles für dich verständlicher machen denke ich.
Wofür 2 Queries?

Ich gebe dir mal einen Tipp. Benutz mal die "Automatische Einrückung" (STRG+D). Vielleicht findest du einen der Fehler dann schon selber.


Ich finde meinen quelltext selber persönlich nicht unübersichtlich.. das extreme einrücken ist für mich tatsächlich viel unüberischtlicher..

2 Queries hab ich deswegen, weil ich persönlich denke, da es sich einmal nur um die Frage handelt und dann um die Antwortmöglichkeiten.. deswegen 2 einzelne.. brauche ja 2 verschiedene Ausgaben im SELECT Befehl.. ist das falsch?

Automatische Einrückung funktioniert nicht, hab es probiert.
Und nein, meine Fehler finde ich nicht selber, da ich schon seit einigen Tagen versuche das Problem zu lösen und immer noch zu keiner Antwort gekommen bin.. ein Klassenkamerad konnte mir auch nicht helfen.. deswegen frage ich hier

DieDolly 8. Mär 2020 15:20

AW: Datenbank- Quiz programmieren
 
Zitat:

das extreme einrücken ist für mich tatsächlich viel unüberischtlicher..
Das ist kein "extremes Einrücken" sondern "korrektes Einrücken".
Rück mal alles händisch korrekt ein dann findest du einen der Fehler.

Zitat:

ein Klassenkamerad konnte mir auch nicht helfen
Meiner Meinung nach eben wegen der nicht vorhandenen Einrückung.

Ich möchte dich nicht ärgern. Ich möchte nur, dass du genau hinguckst ;)

DeddyH 8. Mär 2020 15:22

AW: Datenbank- Quiz programmieren
 
Beispielhaft mal 3 Zeilen, aber korrekt eingerückt:
Delphi-Quellcode:
while not (Datamodule1.ADOQuery6.Eof) and (Datamodule1.ADOQuery7.Eof) do
  Datamodule1.ADOQuery6.Next;
Datamodule1.ADOQuery7.Next;
Fällt Dir da etwas auf?

[Bemerkung] Das sind wahrscheinlich gleich 2 Fehler in 3 Zeilen [Bemerkung]

Reedx 8. Mär 2020 15:38

AW: Datenbank- Quiz programmieren
 
Zitat:

Zitat von DeddyH (Beitrag 1459157)
Beispielhaft mal 3 Zeilen, aber korrekt eingerückt:
Delphi-Quellcode:
while not (Datamodule1.ADOQuery6.Eof) and (Datamodule1.ADOQuery7.Eof) do
  Datamodule1.ADOQuery6.Next;
 Datamodule1.ADOQuery7.Next;
Fällt Dir da etwas auf?

[Bemerkung] Das sind wahrscheinlich gleich 2 Fehler in 3 Zeilen [Bemerkung]

ich finde tatsächlich keinen fehler.. hab woanders auch mit dem .eof und .next gearbeitet und da hat es auch funktioniert ...

DieDolly 8. Mär 2020 15:40

AW: Datenbank- Quiz programmieren
 
Zitat:

ich finde tatsächlich keinen fehler
Zitat:

hab woanders auch mit dem .eof und .next gearbeitet und da hat es auch funktioniert ...
Wer sagt, dass der Fehler (nur) da ist?
Begin: Keyword that starts a statement block

Wenn deine Lehrerin oder dein Lehrer nicht über Begin, End und Blöcke gesprochen hat, am besten direkt ersetzen.

DeddyH 8. Mär 2020 15:42

AW: Datenbank- Quiz programmieren
 
Zitat:

Delphi-Quellcode:
while not (Datamodule1.ADOQuery6.Eof) and (Datamodule1.ADOQuery7.Eof) do

Das entspricht logisch
Delphi-Quellcode:
while (not (Datamodule1.ADOQuery6.Eof)) and (Datamodule1.ADOQuery7.Eof) do
Sicher, dass das so stimmt?

DieDolly 8. Mär 2020 15:49

AW: Datenbank- Quiz programmieren
 
Denk bitte nicht, dass wir dich hier ärgern wollen. Aber es ist auch ein gewisser Grad an Mitarbeit erwünscht.

[OT]Ich gehe einfach mal davon aus, dass der Lehrer das Basiswissen nicht vermittelt oder nicht korrekt vermittelt.
Genau sowas hier ist dann der Grund, warum viele Delphi anschließend hassen[/OT]

Reedx 8. Mär 2020 15:56

AW: Datenbank- Quiz programmieren
 
Zitat:

Zitat von DieDolly (Beitrag 1459161)
Denk bitte nicht, dass wir dich hier ärgern wollen. Aber es ist auch ein gewisser Grad an Mitarbeit erwünscht.

[OT]Ich gehe einfach mal davon aus, dass der Lehrer das Basiswissen nicht vermittelt oder nicht korrekt vermittelt.
Genau sowas hier ist dann der Grund, warum viele Delphi anschließend hassen[/OT]

ja es ist tatsächlich so.. weiß bei vielem nicht wirklich weiter.. nur gut das am Dienstag meine Vorprüfung ist.. die lassen uns ziemlich hängen..

und ja, ich arbeite auch gerne mit und bemühe mich ja, aber wenn ICH selber nichts finde und keine ahnung habe... weiß halt dann auch nicht weiter..


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:39 Uhr.
Seite 1 von 7  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz