Avatar billede syswatch Novice
19. juli 2007 - 15:12 Der er 4 kommentarer og
1 løsning

While løkke inde i while - den yderste kører kun 1 gang

Hejsa...
Jeg prøver på at liste nogle billeder i forskellige grupper, men det er ligesom den yderste while løkke kun kører en gang, hvor dælen er fejlen ?

$result = mysql_query( "SELECT DISTINCT markid FROM markpictures WHERE userid = $_SESSION[userid] ORDER BY markid");
$row = mysql_fetch_array($result);
var_dump($row);
if ( $row ) {
    $result1 = mysql_query( "SELECT markname FROM markers WHERE id = $row[markid]");
    $row1 = mysql_fetch_array($result1);

    echo "<table>";
    while( $row ) {
        echo "<tr>";
        for ( $i=0; $i<3; $i++ ) {
            echo "<td>";
            if ( $row ) {
               
                print "<table width=\"190\" border=\"0\" cellpadding=\"2\" cellspacing=\"10\">";
                print "<tr><td align=\"center\" background=\"img/barbg.jpg\" style=\"height:18px;border:1px solid #000000;\"><b><font color=\"#ffffff\">$row1[markname]</font></b></td></tr>";
                print "<tr><td align=\"center\">";
               
                    $result2 = mysql_query( "SELECT filename FROM markpictures WHERE userid = $_SESSION[userid] AND markid = $row[markid]");
                    while($row2 = mysql_fetch_array($result2)) {
                    print "<img src=\"markpictures/".$row2[filename]."\" width=\"180\" /><br />test<br /><br />";
                    }
               
                print "</td></tr>";
                print "</table>";
                   
                $row = mysql_fetch_array( $result );

            } else {
                echo "&nbsp;";
            }
            echo "</td>\n";
        }
        echo "</tr>\n";
    }
    echo "</table>\n";
}
Avatar billede jakobdo Ekspert
19. juli 2007 - 20:52 #1
Prøv at test din yderste SQL og se om den giver dig flere resultater i f.eks. phpmyadmin.
Avatar billede coderdk Praktikant
21. juli 2007 - 00:16 #2
Kan den ikke laves med én SQL:

SELECT mp.markid, m.markname, mp.filename FROM markers AS m INNER JOIN markpictures AS mp ON m.markid = mp.markid WHERE mp.userid = $_SESSION[userid] ORDER BY markid

? Så skal du blot selv holde styr på om det er en ny eller en gammel markid
Avatar billede syswatch Novice
21. juli 2007 - 19:35 #3
Jeg har fundet fejlen.... havde et problem med informationerne til den yderste while... jakobdo, smider du et svar.. du fik mig guidet ind på hvad det kunne være.
Avatar billede jakobdo Ekspert
22. juli 2007 - 13:22 #4
Svar!
Avatar billede jakobdo Ekspert
23. juli 2007 - 14:16 #5
Takker for point.
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