Daten aus Datenbank werden doppelt angezeigt

Kalito

Erfahrenes Mitglied
hallo ich habe für das anzeigen meiner Bilder folgenden Code
PHP:
                    echo '<table align="center"  cellpadding="0" cellspacing="3">';
                    echo '<tr>';
                        $id=1;
                        while($id<=5){
                            $sql =  'SELECT group_id, image_url FROM '.DB_TABLE.' WHERE category_id = '.$cat.' GROUP BY group_id';
                            $abfrage = mysql_query($sql);
                            while($daten = mysql_fetch_array($abfrage)){
                                $group = $daten['group_id'];
                                if($id%2 == 1){
                                    echo '</tr><tr>';
                                }
                                echo "<td><a href=\"$myRequest&id=$group\" class=\"bild\"><img src=\"".$daten['image_url']."\"   width=\"150px\" height=\"150px\" border=\"0\"/></a>  </td>";
                                $id++;
                            }
                        }
                    echo '</tr>';
                    echo '</table>';

in $myRequest steht nur der anfang des Links und der funktioniert auch.
Jetzt hab ich aber das Problem, das ich bei dieser Funktion einige Werte doppelt oder gar Dreifach angezeigt werden. Ich denke mal das es an Php liegt, weil wenn ich den Sql-Quest über phpmyadmin jage werden nur die besagten 2 Datensätze angezeigt.

Wo ist hier mein Denkfehler :(
 
Weil dein Schleifenaufbau keinen Sinn macht.

PHP:
                    echo '<table align="center"  cellpadding="0" cellspacing="3">';
                    echo '<tr>';
                        $id=1;
                            $sql =  'SELECT group_id, image_url FROM '.DB_TABLE.' WHERE category_id = '.$cat.' GROUP BY group_id';
                            $abfrage = mysql_query($sql);
                            while($daten = mysql_fetch_array($abfrage)){
                                $group = $daten['group_id'];
                                if($id%2 == 1){
                                    echo '</tr><tr>';
                                }
                                echo "<td><a href=\"$myRequest&id=$group\" class=\"bild\"><img src=\"".$daten['image_url']."\"   width=\"150px\" height=\"150px\" border=\"0\"/></a>  </td>";
                                $id++;
                            }
                    echo '</tr>';
                    echo '</table>';

Ungetestet, allerdings solltest du dich auf eine [phpf]while[/phpf]-Schleife beschränken. Falls du die Anzahl limitieren willst, machst du das im SQL Query mit der LIMIT Anweisung.
 

Neue Beiträge

Zurück