_TT_ Skrevet 9. februar 2005 Del Skrevet 9. februar 2005 (endret) Eg sitter med følgende problemstilling: $Query = "SELECT * FROM tabell1 WHERE ID='$Row[0]'"; $Result = mysql_query($Query); $RowCheck = mysql_num_rows($Result); if( $RowCheck > 0 ) { while($Row = mysql_fetch_array($Result)) { $Query2 = "SELECT * FROM tabell2 WHERE ID='$Row[3]'"; $Result2 = mysql_query($Query2); //Array for lagring av navn? } } Den første sørringen henter rader ut ifra tabell1, ut ifra et gitt ID nummer. I denne tabellen er det flere rader som har samme ID. I andre spørringen hentes ut et navn ut ifra ID'en som ble gitt ut ifra den første spørringen. Mitt mål er å kunne lagre navnene som blir gitt i den andre spørringen på en eller annen måte. Dette er kanskje mulig med array, men eg vet ikke helt hvordan. Noen som forstod hva eg var ute etter? Endret 9. februar 2005 av _TT_ Lenke til kommentar
Gilbert Skrevet 9. februar 2005 Del Skrevet 9. februar 2005 Tenker du på en left join -sak? Uansett er det fryktelig mye enklere å forstå tanken bak andres kode når man bruker informative variabelnavn :-) Lenke til kommentar
_TT_ Skrevet 9. februar 2005 Forfatter Del Skrevet 9. februar 2005 (endret) Hadde litt dårlig tid da eg postet tidligere. Skal prøve å forklare litt bedre nå. Eg har en tabell som inneholder for eksempel følgende: rad | id1 | id2 | 1 | 'a' | '1' | 2 | 'b' | '2' | 3 | 'c' | '3' | Og eg vil printe ut bokstavene for seg og tallene for seg. Og det eg ville var å kunne gjøre dette ved bruk av kun en while løkke, og kun måtte hente radene en gang, istedenfor å måtte hente hver av de to ganger for først å skrive ut bokstavene og deretter hente radene på nytt for å skrive ut tallene. Håper det ble bedre å forstå.. Endret 9. februar 2005 av _TT_ Lenke til kommentar
???????? Skrevet 9. februar 2005 Del Skrevet 9. februar 2005 Lagre det som arrays i while funksjonen din. while($row = mysql_fetch_array($result)) { $tallarray[] = $row['id2']; $bokstavarray[] = $row['id1']; } Hvis det ikke var det du mente, gi da et eksempel på output'en du ønsker? Lenke til kommentar
_TT_ Skrevet 10. februar 2005 Forfatter Del Skrevet 10. februar 2005 Det fungerer visst å legge de i arrays slik som det der ja, men når eg skal printe ut fra array'et så må eg spesifisere hvilken slot den skal printe ut. Slik som: echo $tallarray[0]; echo $tallarray[1]; osv. Er det mulig å få printe ut alt i array'et på en gang? For det er forskjellig antall på hver, så å legge inn echo på hver av slot'ene i arrayene vil ikke fungere. Lenke til kommentar
???????? Skrevet 10. februar 2005 Del Skrevet 10. februar 2005 Det du kan gjøre er å ikke plassere det i en array, men heller f.eks. slik: $tallene .= $row[...]; Så kan du formatere det slik du vil i while'en. Fordelen med å legge det i en array er at da skjer formateringen utenfor spørringen - hvis den f.eks. er i en class eller lignende. Da bruker du bare foreach() når du skal skrive ut variablene. F.eks. foreach($tallarray as $var) { echo "$var<br>"; } Lenke til kommentar
_TT_ Skrevet 10. februar 2005 Forfatter Del Skrevet 10. februar 2005 Det fungerte toppers, takk skal du ha! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå