22. december 2007 - 00:51
Der er
23 kommentarer og 1 løsning
Ang. loop i loop
mysql_connect("localhost", $username, $password) or die(mysql_error()); mysql_select_db($database) or die(mysql_error()); // Finder brugerne $f = mysql_query("SELECT * FROM game") or die(mysql_error()); while($d = mysql_fetch_assoc($f)){ $playerID = $d[ID]; $name = $d[name]; // Finder units som brugeren ejer. $f = mysql_query("SELECT * FROM units WHERE owner='$playerID'") or die(mysql_error()); while($d = mysql_fetch_assoc($f)){ $amount = $d[amount]; //Spytter alt data ud om den individuelle bruger: echo "$playerID "; echo "$name "; echo "$amount"; echo "<br>"; } } ?>
Annonceindlæg fra Barco
Er jeres mødelokaler sikre nok?
Den moderne arbejdsplads er i stigende grad afhængig af mødelokaler til at fremme samarbejde, men dette skift medfører også stigende sikkerhedsudfordringer.
22. december 2007 - 00:51
#1
For helved? Jeg fik trykket opdater. Okay spørgsmålet kommet her:
22. december 2007 - 00:54
#2
Jeg har 2 tabeller: game og units. Game indenholder: ID og name Units indenholder: Owner (hvem ejer disse units), ID, amount og unit Min php skal først liste én bruger (første bruger i game-tabellen). Lave loop i units-tabellen for at checke om brugeren har nogen units. Hvis han har det, så list dem - og så tag næste bruger. Desværre smider den kun én bruger ud, den eneste bruger som har nogen enheder. Den skal naturligvis også liste dem som IKKE har units.
22. december 2007 - 00:58
#3
Nogen der er vågne? :).
22. december 2007 - 01:03
#4
Når du bruger det samme navn, $f, til begge forespørgsler, så er du li'så sikker på at få problemer, som en sushi-spisende blondine der vil gå over storebæltsbroen i tæt tåge en søndag morgen.
22. december 2007 - 01:04
#5
Ååh du er genial, erik... Jeg prøver lige.
22. december 2007 - 01:06
#6
mysql_connect("localhost", $username, $password) or die(mysql_error()); mysql_select_db($database) or die(mysql_error()); // Finder brugerne $f = mysql_query("SELECT * FROM game") or die(mysql_error()); while($d = mysql_fetch_assoc($f)){ $playerID = $d[ID]; $name = $d[name]; // Finder units som brugeren ejer. $ff = mysql_query("SELECT * FROM units WHERE owner='$playerID'") or die(mysql_error()); while($dd = mysql_fetch_assoc($ff)){ $amount = $dd[amount]; //Spytter alt data ud om den individuelle bruger: echo "$playerID "; echo "$name "; echo "$amount"; echo "<br>"; } } Samme resultat :/.
22. december 2007 - 01:10
#7
(glemte at hun også havde højhælede sko på). Det vil virke fint, som du skriver det her.
22. december 2007 - 01:10
#8
Du kan gøre dit script lidt "lettere" ved kun at lave ét udtræk fra databasen, f.eks.: SELECT g.ID, g.name, u.amount FROM game AS g LEFT JOIN units AS u ON g.ID = u.owner Ovenstående giver dig samtlige rækker fra "game" med NULL værdier for rækker, som ikke har en tilsvarende owner i tabellen "units".
22. december 2007 - 01:11
#9
22. december 2007 - 01:11
#10
Jo, det vil virke, hvis du husker at uploade dit script.
22. december 2007 - 01:18
#11
Har jeg skam :). Addet "asd" . :)
22. december 2007 - 01:19
#12
j4k0b :) er ikke haj til det - så tager den "simple" metode :) Den forstår jeg bedre.
22. december 2007 - 01:19
#13
Ok, så har du kun "jon" i databasen, der passer i de to tabeller.
22. december 2007 - 01:21
#14
ja præcis erikjacobsen - men den skal jo liste alle brugerne - også selvom de ikke har nogen units. :)
22. december 2007 - 01:21
#15
Skal lige sige jeg er meget taknemmelig for hjælpen :).
22. december 2007 - 01:23
#16
Så skal du jo be' den om det. Fx: $f = mysql_query("SELECT * FROM game") or die(mysql_error()); while($d = mysql_fetch_assoc($f)){ $playerID = $d[ID]; $name = $d[name]; echo "$playerID $name<br>"; $ff = mysql_query("SELECT * FROM units WHERE owner='$playerID'") or die(mysql_error()); while($dd = mysql_fetch_assoc($ff)){ $amount = $dd[amount]; echo " $amount"; echo "<br>"; } }
22. december 2007 - 01:23
#17
Hvis det hjælper, så er dataene i mine tabeller: Game: ID name 1 jon 2 tina 3 kim Units: ID name amount owner 1 soldater 54 1
22. december 2007 - 01:25
#18
Se, det var bedre ;)
22. december 2007 - 01:26
#19
Virker, erikjacobsen :) Men hvordan? Kan ikk se forskellen på dit og mit :).
22. december 2007 - 01:26
#20
Altså: 1 jon 54 2 tina 3 kim
22. december 2007 - 01:26
#21
Så må du kigge lidt mere på det. g'nat ;)
22. december 2007 - 01:28
#22
Hmmm, sikker på jeg har prøver det du skrev. Men der havde jeg blondine-på-en-bro-fejlen med, naturligvis. Hmm :). Man skal lære hver dag! Tak for hjælpen erikjacobsen, jeg har en milliard spørgsmål de kommende dage, er ved at lære php fra asp :). Lægger du et svar?
22. december 2007 - 09:04
#23
Jeg samler slet ikke på point, tak.
22. december 2007 - 11:23
#24
:) aha.. okay så, tak for hjælpen.
Vi tilbyder markedets bedste kurser inden for webudvikling