Avatar billede kane Juniormester
18. marts 2004 - 19:53 Der er 10 kommentarer og
1 løsning

2 tabeller i noget if then

Jeg har en linie som ser sådan her ud.

<?php echo $row["Login"]; ?> har oprettet spillet <span class="MenuText"> <?php echo $row["game"]; ?><? if ($row[luk]=="0"){ ?> <a href="spil.php?id=<?php echo $row["Id"]; ?>" class="MenuText">Spil her</a><?}?>

her er dens query

$query = mysql_query("SELECT * FROM spil ORDER BY Id DESC LIMIT 0,8")or die(mysql_error());
while($row = mysql_fetch_array($query))  {

men nu skal jeg have checket fra noget andet og i en anden tabel midt i mellem.

hvis en bruger har spillet på et spil (Id) så skal linket spil her forsvinde.
og tabellen hedder resultat
Avatar billede muddi Praktikant
18. marts 2004 - 21:45 #1
Du er nødt til at give en dybere beskrivelse af problemet.
ps. lad være med at poste hele din kode :o)
Avatar billede kane Juniormester
18. marts 2004 - 22:01 #2
<?php echo $row["Login"]; ?> har oprettet spillet <span class="MenuText"> <?php echo $row["game"]; ?><? if ($row[luk]=="0"){ ?><----HER KOMMER forsøg<?php  require_once("class.php");
dhost::dbConn("xxxx");
$query = mysql_query("select * from resultat where login = '$login'");
while($row = mysql_fetch_array($query))  {
  if ($Id['Id'] == "Id (id på spil)" and $Login['Login']) { echo ("<<a href="spil.php?id=<?php echo $row["Id"]; ?>" class="MenuText">Spil her</a>"); }
  else { echo ("<a href="spilret.php?id=<?php echo $row["Id"]; ?>" class="MenuText">Ret spil</a>"); }
}
?><?}?>
Avatar billede tefcke Nybegynder
20. marts 2004 - 12:11 #3
Har rettet lidt til i det kode du postede, og så har jeg stillet det lidt mere læsligt op. Du skriver aldrig rigtigt hvad problemet er, men måske du kunne have et problem med at du først har en query hvor du gemmer tupplerne i $row, og i det kode du viste her, bruger du selv samme variabel ($row) til en indlejret (muligvis, kan jeg ikke se ud fra din kode her) query.

<?php echo $row['Login']; ?> har oprettet spillet <span class="MenuText"> <?php echo $row['game']; ?>
<?php
if ($row['luk'] == '0') {
    // Include class file
    require_once("class.php");
    // Connect to the database
    dhost::dbConn("xxxx");
    // Perform query
    $query = mysql_query("
        SELECT *
        FROM resultat
        WHERE login = '$login'")
            or die( mysql_error() );
    // Run through result
    while($row = mysql_fetch_array($query))  {
        if ($Id['Id'] == "Id (id på spil)" and $Login['Login']) {
            echo ("<a href=\"spil.php?id={$row['Id']}\" class=\"MenuText\">Spil her</a>");
        } // end ... if
        else {
            echo ("<a href=\"spilret.php?id={$row['Id']}\" class=\"MenuText\">Ret spil</a>");
        } // end ... else
    } // end ... while
} // end ... if $row['luk']
?>
Avatar billede kane Juniormester
26. marts 2004 - 17:10 #4
hej tefcke

jeg har (prøvet) lavet sådan en lille spille side.

Det er til mit arbejde, hvor vi spiller på fodbolds kampe, og køber kage for pengene.
man kan nu oprette sig som bruger, og oprette spil eller spille på kampe.

Når man opretter et spil bliver, bliver Login, spillet for et ID, og hvornår spillet lukker (en dato) gemt i tabel spil.

Tabellen spil bliver vist på forsiden, så man (kunne før) se de sidste 8 spil ( man komer til at se alle spil på en anden side).
Nu komer mit problem, hvis en spiller har spillet på et spil ( resultat bliver gemt i en tabel der hedder resultat, som gemmer spillets ID, Login navn og deres bud på kampen) så må de ikke kunne spille på den kamp igen, og derfor skal linket Spil her rettes til Ret spil ( og hvis luk i spil tabel er sat til 1, så skal man slet ikke kunne se noget link)

Dit forsøg viser kun 1 kamp, og 2 gange retspil med hver sin ID
Avatar billede kane Juniormester
26. marts 2004 - 17:10 #5
Avatar billede tefcke Nybegynder
26. marts 2004 - 22:17 #6
Det var ikke et forsøg, det var bare for at hjælpe lidt, at jeg rettede nogen fejl i din kode og stillede det lige mere overskueligt op.

Men hvad jeg kan læse ud af din forklaring, skal du have konstueret en query som henter alle de kampe frem som en bruger (med et id) ikke har spillet på endnu og som ikke har overskredet lukke datoen.
Du kan så i den tabel hvor i du indhenter data om hvem som har spillet på hvilken spil, hente de spil frem som en bruger så har mulighed for at rette i (altså de spillet han har spillet på, og som ikke har overskredet lukke datoen).

Jeg kan desværre ikke hjælpe dig mere end dette, da jeg ikke kender dit database design.
Avatar billede kane Juniormester
27. marts 2004 - 07:59 #7
Du kan godt få adgang til min db, hvis du gider og hjælpe.
Avatar billede tefcke Nybegynder
27. marts 2004 - 12:08 #8
Nej, jeg ville bare se din tabel struktur, det er sådan set alt hvad der er brug for
Avatar billede kane Juniormester
27. marts 2004 - 12:15 #9
* adgang
* resultat
* spil

adgang :
id =tinyint
Login = text
kode = text
navn = text
-------------------------------------------------------------------------------------
resultat:
id = text
game = text
Login = text
home = text
out = text
-------------------------------------------------------------------------------------
Spil :
Id = tinyint
game = text
Login = text
spillukker = text
luk = tinnyint
-------------------------------------------------------------------------------------
Avatar billede kane Juniormester
27. marts 2004 - 12:15 #10
kan det bruges?
Avatar billede kane Juniormester
02. september 2004 - 08:57 #11
lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester