hi. Ich habe händler und dazu waren. diese beiden sollen je nach dem welcher händler welche waren anbietet verknüpft werden. dazu verwende ich 3 tabellen. eine mit den händlern, eine mit den Waren und eine um die IDs dieser beiden zu Verknüpfen. Diese Verknüpfung hab ich auchvon hier bekommen. (also dass man das so macht). Mein problem ist jetzt nur, dass ich die waren der je nach händler ausgewählten IDs alphabetisch soritiert ausgeben möchte. Leider fällt mir dazu jetzt wirklich nichts ein. =/
Ankündigung
Einklappen
Keine Ankündigung bisher.
MySql - 3 tabellen-verknüpfung - alphabetische ausgabe
Einklappen
Neue Werbung 2019
Einklappen
X
-
Stichworte: -
-
-
mom, ich merke jetzt, dass mein einleitungspost totaler schrott war/ist.
ORDER BY kenne ich natürlich.
erstmal den quelltextalso wie unschwer zu erkennen ist, frage ich für einen bestimtmen ort die händler ab, mit denen ich dann in der verknüpfungstabelle die IDs der Waren heraushole und dann dafür die jeweilgen daten aus der waren tabelle.PHP-Code:<?php
$index = mysql_query("select name from wot_places where id='$id' order by typ, name ASC", $db);
$city_name = mysql_fetch_assoc($index);
$t_index = mysql_query("select * from wot_traders where place='$id' order by sort, name ASC", $db);
echo "<tr><td align='left' valign='top' colspan='2'><b class='titel'>$city_name[name][/b]</td></tr>";
while ($t_daten = mysql_fetch_assoc($t_index))
{
echo "<tr><td align='left' valign='top' width=220>
Name: <font class=titel_small>$t_daten[name]</font>
Beruf: $t_daten[typ]</td>
<td align='left' valign='top' width=50>Waren:</td><td align='left' valign='top'>";
$ti_index = mysql_query("select * from wot_traders_items where tid='$t_daten[id]' order by iid ASC", $db);
echo"<table width='100%'>";
while ($ti_daten = mysql_fetch_assoc($ti_index))
{
$i_index = mysql_query("select * from wot_items where id='$ti_daten[iid]' order by id ASC", $db);
while ($i_daten = mysql_fetch_assoc($i_index))
{
echo "<tr>
<td align='center' valign='middle'>[img]images/items/$i_daten[img][/img]</td>
<td align='left' valign='middle'>$i_daten[name]</td>
<td align='right' valign='middle'>$i_daten[preis] $i_daten[einheit]</td>
</tr>";
}
}
echo"</table>";
echo "</td></tr>";
}
echo "</td></tr></table>";
?>
nur kann ich aus der verknüpfungs tabelle ja nicht alphabetisch sortiert lesen. sondern nur der reihenfolge nach in der die jeweilige id des händlers kommt, oder?
Kommentar
-
Kommentar
-
warum ich 3 statt einer abfrage verwende? kaCode:händler tabelle: (wot_traders) id bigint(50) //id eben name varchar(255) //name des händlers place bigint(50) //der ort wo der ist typ varchar(255) //typ des händelers: kaufmann, runen, etc sort varchar(255) //sortierung (a,b,b...) waren tabelle: (wot_items) id bigint(50) //id name varchar(255) //name der ware img varchar(255) //pfas zu bild preis varchar(255) //preis einheit varchar(255) //währung verknüpfungstabelle (wot_traders_items) tid bigint(50) //id des händlers iid bigint(50) //id der ware
. vielleicht weil das hier da anfänger forum ist

Aber ich lerne gerne, also sag mir wie ich das in eine bekomme und dann auch sortiert.
danke im voraus und gute nacht
Kommentar
-
Versuche es mal hiermit:
Code:SELECT wt.name, wi.name FROM wot_traders AS wt INNER JOIN wot_traders_items AS wti ON wt.id = wti.tid INNER JOIN wot_items AS wi ON wti.iid = wi.id ORDER BY wi.name
Kommentar

Kommentar