ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
271
271
EMPFEHLEN
-
ich stehe vor folgendem Problem:
In meiner DB stehen 4 Tabellen welche zusammen ein "Heft" aufzeigen sollen.
Nun, jedes Heft (gesamthaft 12 Ausgaben) hat 20seiten.
In einer Tabelle (Ausgabe) schrieb ich alle Heft Nummern auf, in einer zweiten (Status) einen Status mit "offen/provisorisch/gebucht". Dann eine weitere Tabelle (Seiten) mit den 20 Seiten und zuguter letzt eine Tabelle mit einer Zusammenfassung (Heft). Die letzte Tabelle (Heft) schreibt jeweils die ID der einzelnen Tabellen in die Zeile wo ich diese wieder auslese mit über kreuz abfragen.
Nun mein Problem ist folgendes. Wen ich das Heft online anschaue sollen alle Seiten, egal ob etwas schon enthalten ist oder nicht, die Seiten aufgezeigt werden.
Dies funktioniert jedoch nur soweit dass eben die Seiten zwar abfragt jedoch der Status und Co. noch enthalten sind:
Code :1 2 3 4 5 6 7 8 9 10
"SELECT Page.IDP, Page.Beschreibung, SBH.Nr, SBH.Titel FROM SBH_Seiten AS Page, SBH2010 AS SBH WHERE SBH.Nr = " . $_GET['Nr'];
Das momentanige Ergebniss gebe ich wie folgt aus:
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
$res = mysql_query($Status); if ($res!=false && mysql_num_rows($res) > 0) { while ($row = mysql_fetch_array($res, MYSQL_ASSOC)) { $ID = $row['ID']; $IDStatus = $row['IDStatus']; $Firma = $row['Firma']; $Beschreibung = $row['Beschreibung']; $Format = $row['Format']; if($IDStatus == "3") { echo '<div id="status_gebucht"> <a href="sbh_seite.php?ID='.$ID.'" class="gebucht"> <p class="Firmenname">' . $Firma . '</p> <br /> <img src="gif/gebucht.gif" border="0"> <br /> <p class="Status">' . $Beschreibung . '</p> </a> </div>'; } elseif ($IDStatus == "2") { echo '<div id="status_provisorisch"> <a href="sbh_seite.php?ID='.$ID.'" class="provisorisch"> <p class="Firmenname">' . $Firma . '</p> <br /> <img src="gif/provisorisch.gif" border="0"> <br /> <p class="Status">' . $Beschreibung . '</p> </a> </div>'; } elseif ($IDStatus == "1"){ echo '<div id="show_page"> <a href="sbh_seite.php?ID='.$ID.'" class="offen"> <p class="Firmenname">' . $Firma . '</p> <br /> <img src="gif/offen.gif" border="0"> <br /> <p class="Status">' . $Beschreibung . '</p> </a> </div>'; } } }
Mit der nachfolgenden Abfrage schaffe ich es jegliche Seiten auszuwählen welche einen Status enthalten.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
'SELECT SBHALL.ID, SBHALL.IDSeiten, SBHALL.IDVerlag, SBHALL.IDStatus, SBHALL.IDSBH, SBHALL.Bemerkung, SBHSeiten.IDP, SBHSeiten.Beschreibung, SBHVerlage.IDV, SBHVerlage.Firma, SBHFormat.IDF, SBHFormat.Format, SBHFormat.Preis, SBHFormat.Width, SBHFormat.Height, SBH2010.Nr, SBHStatus.IDS, SBHStatus.Text FROM SBH_ALL AS SBHALL, SBH_Seiten AS SBHSeiten, SBH_Verlage AS SBHVerlage, SBH_Format AS SBHFormat, SBH_Status AS SBHStatus, SBH2010 AS SBH2010 WHERE SBHALL.IDSBH = SBH2010.Nr AND SBHSeiten.IDP = SBHALL.IDSeiten AND SBHVerlage.IDV = SBHALL.IDVerlag AND SBHFormat.IDF = SBHALL.IDFormat AND SBHStatus.IDS = SBHALL.IDStatus AND SBHALL.IDSBH = ' . $_GET['Nr'] ;
Ziel wäre es jedoch dass wirklich alle 20 Seiten, egal ob Inhalt vermerkt ist oder nicht, diese in eine WHILE Schleife angezeigt werden.
Sprich zum Schluss sollte dann jeweils alle Seiten des Heftes aufzeigen - und wen z.B. auf Seite 7 etwas gebucht ist, dies entsprechend vermerken.
Bin euch dankbar um jeden rat - ggf. ist es auch mit der Tabellenstrukturierung nicht besonders schlau gemacht - Danke für euer Inputs.
-
Mach dich mal mit "LEFT JOIN" schlau. Damit kannst du 2 Tabellen zusammen ausgeben und es werden auch Rekords ausgegeben, bei der nur eine Tabelle Einträge besitzt.
---------------------------------------------------------------------------------------------------
item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
item: Tutorial: [PHP][MySQL] Debug Queries
item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben
Ähnliche Themen
-
Realisierung ein Timestamp aus mehreren Tabellen abfragen
Von spikaner im Forum Relationale DatenbanksystemeAntworten: 4Letzter Beitrag: 29.04.08, 10:32 -
Abfragen von mehreren Tabellen?
Von FL08 im Forum Relationale DatenbanksystemeAntworten: 8Letzter Beitrag: 28.02.08, 15:20 -
Abfragen ob Variablen aus mehreren wörtern bestehen
Von peper im Forum PHPAntworten: 4Letzter Beitrag: 08.08.07, 02:04 -
[SUCHE] Umfragescript mit mehreren gleichzeitigen Abfragen
Von Xzarus im Forum PHPAntworten: 2Letzter Beitrag: 27.11.06, 21:35 -
Ein bestimmtes Feld in mehreren Datensätze ansprechen und abfragen.
Von messmar im Forum Relationale DatenbanksystemeAntworten: 5Letzter Beitrag: 02.12.04, 12:50





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren