JesusFreak777
Erfahrenes Mitglied
Hallo
Das ganze wird mal ein QUIZ,...
ich hab 2 tabellen,...
quizdb:
quizid
frage
antwort
falsche antwort1
...
und
statsdb:
statsid
qid
uid
punkte
...
wenn der user mit der id 1 jetzt ne frage beantwortet trägt er in die tabelle statsdb ne automatische id ein die user id (user 1 ist imma user 1) und die Quizid von der frage die der user beantwortet habe,...
wenn ich jetzt das ganze ausgebe schreibt er mir:
Script:
quiz id |user id|
---1-----|---1------|
---2-----|---1------|
---2-----|---2------|
---3-----|-----------|
---4-----|-----------|
---5-----|---1------|
---5-----|---2------|
---5-----|---3------|
---6-----|---4------|
---6-----|---2------|
---7-----|---1------|
---8-----|-----------|
usw,....
wie kann ich jetzt direkt im sql prüfen ob user x ($UserID) die frage schon beantwortet hat und dann einfach die nächste quizidid ausgeben,...
wenn ich mach
WHERE statsdb.UID != $UserID
dann gibt er mir zwar die qid nicht mehr aus die der user schon beantwortet hat,... aber hat ein anderer user die frage schonmal beantwortet gibts wie quizid zweimal einmal mit meiner ID (die kann ich ausschließen) und einmal mit seiner ID,...
und irgendwie komm ich nicht weiter,...
in der theorie müsste jetzt der user 1 zugriff auf die fragen 3, 4, 6 und 8 haben,... nach meiner Programmierung hat er aber zugriff auf 2, 3, 4, 5, 6 und 8 weil 2 und 5 von einem anderen user beantwortet worden sind und in meiner virtuellen tabelle jetzt zweimal erschienen sind
*HILFE*
kann mir da jemand helfen?
Das ganze wird mal ein QUIZ,...
ich hab 2 tabellen,...
quizdb:
quizid
frage
antwort
falsche antwort1
...
und
statsdb:
statsid
qid
uid
punkte
...
wenn der user mit der id 1 jetzt ne frage beantwortet trägt er in die tabelle statsdb ne automatische id ein die user id (user 1 ist imma user 1) und die Quizid von der frage die der user beantwortet habe,...
wenn ich jetzt das ganze ausgebe schreibt er mir:
Script:
HTML:
SELECT *
FROM quizdb
LEFT OUTER JOIN statsdb
ON
statsdb.QID = quizdb.QuizID
LEFT OUTER JOIN userdb
ON
userdb.UserID = statsdb.UID
ORDER BY quizdb.QuizID
quiz id |user id|
---1-----|---1------|
---2-----|---1------|
---2-----|---2------|
---3-----|-----------|
---4-----|-----------|
---5-----|---1------|
---5-----|---2------|
---5-----|---3------|
---6-----|---4------|
---6-----|---2------|
---7-----|---1------|
---8-----|-----------|
usw,....
wie kann ich jetzt direkt im sql prüfen ob user x ($UserID) die frage schon beantwortet hat und dann einfach die nächste quizidid ausgeben,...
wenn ich mach
WHERE statsdb.UID != $UserID
dann gibt er mir zwar die qid nicht mehr aus die der user schon beantwortet hat,... aber hat ein anderer user die frage schonmal beantwortet gibts wie quizid zweimal einmal mit meiner ID (die kann ich ausschließen) und einmal mit seiner ID,...
und irgendwie komm ich nicht weiter,...
in der theorie müsste jetzt der user 1 zugriff auf die fragen 3, 4, 6 und 8 haben,... nach meiner Programmierung hat er aber zugriff auf 2, 3, 4, 5, 6 und 8 weil 2 und 5 von einem anderen user beantwortet worden sind und in meiner virtuellen tabelle jetzt zweimal erschienen sind
*HILFE*
kann mir da jemand helfen?
Zuletzt bearbeitet: