Tabelleninhalt sortieren

Baerle

Grünschnabel
Hallo an alle erstmal.

Ich steh grad ein bisschen auf dem Schlauch und komme nicht weiter.

Das Projekt soll folgendes machen:

User trägt ein welchen Händler er hat.
Jeder Händler hat eine eigene ID und der Username wird dahinter eingetragen.

Das Eintragen funktioniert. Bei jeder Eintragung wird ein neuer Datensatz mit "Haendlerid" und "Username" generiert.

Jetzt zum Problem...Es gibt 12 Händler und über 200 User. Nun haben einige ja den gleichen Händler. Dieser soll aber nicht jedesmal neu aufgeführt werden sondern in der Tabelle soll in der 1. Spalte der Händler und danach alle User mit Komma getrennt stehn die den Händler haben.

Zum besseren Verständnis: http://baerle.bplaced.net/haendler/ausgabe.php

Hier der bisherige Code:

PHP:
<?php

include('config.php');

$link = mysql_connect("$host", "$login", "$pass");
if (!$link) {
    die('keine Verbindung möglich: ' . mysql_error());
}

$db_sel = mysql_select_db( baerle_haendler )
   or die("Auswahl der Datenbank fehlgeschlagen");

$sql = "SELECT * FROM haendler";

$db_erg = mysql_query( $sql );
if ( ! $db_erg )
{
  die('Ungültige Abfrage: ' . mysql_error());
}




echo '<table border="1" bgcolor="#fff00">';
while ($zeile = mysql_fetch_array( $db_erg, MYSQL_ASSOC))
{

if($zeile['haendlerid'] == "1")
{
  $image="<center><img src=image/aegypt.jpg><br>Ägyptischer Händler</img></center>";
}

if($zeile['haendlerid'] == "2")
{
  $image="<center><img src=image/arm.jpg><br>Armenischer Händler</img></center>";
}
if($zeile['haendlerid'] == "3")
{
  $image="<center><img src=image/byzant.jpg><br>Byzantinischer Händler</center></img>";
}
if($zeile['haendlerid'] == "4")
{
  $image="<center><img src=image/gall.jpg><br>Gallischer Händler</img></center>";
}
if($zeile['haendlerid'] == "5")
{
  $image="<center><img src=image/germ.jpg><br>Germanischer Händler</img></center>";
}
if($zeile['haendlerid'] == "6")
{
  $image="<center><img src=image/roem.jpg><br>Römischer Händler</img></center>";
}
if($zeile['haendlerid'] == "7")
{
  $image="<center><img src=image/tuerk.jpg><br>Türkischer Händler</img></center>";
}
if($zeile['haendlerid'] == "8")
{
  $image="<center><img src=image/span.jpg><br>Spanischer Händler</img></center>";
}
if($zeile['haendlerid'] == "9")
{
  $image="<center><img src=image/siz.jpg><br>Sizilianischer Händler</img></center>";
}
if($zeile['haendlerid'] == "10")
{
  $image="<center><img src=image/phoen.jpg><br>Phönizischer Händler</img></center>";
}
if($zeile['haendlerid'] == "11")
{
  $image="<center><img src=image/thrak.jpg><br>Thrakischer Händler</img></center>";
}
if($zeile['haendlerid'] == "12")
{
  $image="<center><img src=image/parth.jpg><br>Pharthischer Händler</img></center>";
}



  echo "<tr>";
  echo "<td>". $image . "</td>";
  echo "<td>". $zeile['name'] . "</td>";
  
  echo "</tr>";
}
echo "</table><br>";
echo '<br><a href="sb.php">Zur&uuml;ck</a>';

mysql_free_result( $db_erg );

 
?>

Wäre für jede Idee dankbar.
 
Hat jeder User nur einen einzigen Händler, kannst du die Händler-ID in eine separate Spalte der User-Tabelle eintragen. Kann ein User mehrere Händler haben und ein Händler mehrere User, dann hast du eine m x n-Beziehung, die du in einer Zwischentabelle auflösen musst.
Hier mal ein paar Infos dazu mit dem Hinweis, dass die von dir bisher gewählte Datenbank- bzw. Tabellenstruktur denkbar ungünstig ist.

Gruß
Erik
 
Zurück