16. maj 2004 - 13:27
Der er
5 kommentarer og 1 løsning
Hent alle med en while?
Hej! Jeg er ikke lige frem g33k til php, så mit spg. er nok meget let for nogle af jer ;) But here we go.. if($action=="tingliste") { $select_itemlist = mysql_query("SELECT id,navn,owner FROM items WHERE owner='$username'"); while($row_itemlist = mysql_fetch_array($select_itemlist)){ print "<script>parent.document.getElementById('boxtekst').innerHTML = '<table width=\"100%\" cellpadding=2 cellspacing=0>$row_itemlist[navn]</td></tr></table>';</script>"; } } Mit store problem er at den KUN henter den ting med det højeste id og som tilhører brugeren. Den skal hente alle ting navne hvor "owner = $username" Men den henter kun den ting der har højst id (og som tilhører brugeren) Den skal hente alle.. hvordan gør jeg det? :)
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
Så vidt jeg kan se overskriver du teksten hver gang du henter en ny post, så derfor vil det kun være den sidste post i søgningen der vises. Jeg er ikke helt hjemme i det der script-stads, men prøv at skrive: print "<script>parent.document.getElementById('boxtekst').innerHTML += .... istedet for: print "<script>parent.document.getElementById('boxtekst').innerHTML = .... En anden mulighed er: if($action=="tingliste") { $select_itemlist = mysql_query("SELECT id,navn,owner FROM items WHERE owner='$username'"); $tmp = ""; while($row_itemlist = mysql_fetch_array($select_itemlist)) { $tmp .= $row[navn]."<br>"; } print "<script>parent.document.getElementById('boxtekst').innerHTML = '<table width=\"100%\" cellpadding=2 cellspacing=0>$tmp</td></tr></table>';</script>"; } A.
if($action=="tingliste") { $select_itemlist = mysql_query("SELECT id,navn,owner FROM items WHERE owner='$username'"); $tmp = ""; while($row_itemlist = mysql_fetch_array($select_itemlist)) { $tmp .= $row[navn]."<br>"; } print "<script>parent.document.getElementById('boxtekst').innerHTML = '<table width=\"100%\" cellpadding=2 cellspacing=0>$tmp</td></tr></table>';</script>"; } Her printer den overhovedet IGEN tekst. Men den melder heller ikke om fejl i koden - Hvad kan det være??
Har ændret lidt i koden og fået den til at printe: if($action=="tingliste") { $select_itemlist = mysql_query("SELECT id,navn,owner FROM items WHERE owner='$username'"); $tmp = ""; while($row_itemlist = mysql_fetch_array($select_itemlist)) { $tmp = $row_itemlist[navn]."<br>"; } print "<script>parent.document.getElementById('boxtekst').innerHTML = '<table width=\"100%\" cellpadding=2 cellspacing=0>$tmp</td></tr></table>';</script>"; } MEN! Den printer stadig kun den nyeste ;(
Hmm, prøv med denne linie istedet: print "<script>parent.document.getElementById('boxtekst').innerHTML = '<table width=\"100%\" cellpadding=2 cellspacing=0><tr><td>".$tmp."</td></tr></table>';</script>";
tror vi fik postet oven i hinanden der. Du skal have $tmp .= $row_itemlist[navn]."<br>"; med punktum foran = Du kan evt. prøve $tmp = $tmp.$row_itemlist[navn]."<br>"; istedet, men det burde være det samme. hvis det stadig ikke virker, så prøv at post koden for hele siden (husk at fjerne password til databasen osv.) :) A.
Vi tilbyder markedets bedste kurser inden for webudvikling