[PHP] Zwei Tabellen Auslesen...

M

mac17

Aktives Mitglied
Thread Starter
Dabei seit
05.03.2004
Beiträge
151
Reaktionspunkte
0
Ich habe zwei Tabellen>

1 Tabelle - Navigation
Kategorie - Name
1 - News
2 - Sport
3 - Schule
4 - Reisen

2 Tabelle - Kategorien
ID - Name - Link - Kategorie
1 - Aktuelles 2006- news.php - 1
2 - Skifahren - skifahren.php - 2
3 - Tennis - tennis.php - 2
4 - Schwimmen - schwimmen.php - 2
5 - mein Klasse - mklasse.php - 3
6 - Europa - europa.php - 4
7 - Amerika - amerikas.php - 4
8 - Australien - australien.php - 4

So SOLLTE es ausschauen:
News
Aktuelles 2006

Sport
Skifahren
Tennis
Schwimmen

Schule
Meine Klasse

Reisen
Europa
Amerika
Australien

Mein Problem ich schaffe es nicht nur die Kategorie abzufragen. Verbunden
sind sie, jedoch bin ich noch total am anfang von php.

Das bisherige Script:
PHP:
<?php
include("dbconnect.php");
$sql = "SELECT * FROM `Kategorien`";
$ergebnis = mysql_query($sql);

while($row = mysql_fetch_object($ergebnis)) {
    echo $row->Name. "<br>";
}
?>

Kann mir diesbezüglich jemand weiterhelfen bitte.
 
z. B. mit

PHP:
$sql = "SELECT * FROM Kategorien WHERE kategorie = '2'";

holst Du alle Einträge des Themas "Sport" aus der DB.

Es erscheint mir nicht sinnvoll, für jedes Ausgabemodul eine einzelne PHP-Datei zu erstellen, da wirst Du ja kirre. Du liest den Namen aus und gibts diese Variablen einfach als Liste aus, fertig:

PHP:
<? 
    $counter = 0;
	$selectQuery = "SELECT * FROM Kategorien WHERE kategorie = '2'";
	$queryID = mysql_query($selectQuery);
	while ($content = mysql_fetch_assoc($queryID)) {
      $name[$counter] = $content["name"];
      $counter++;
   }
?>

<ul>
<? 
   for ($i=0; $i <= count($name); $i++) {
        echo "<li>" . $name[$i]. "</li>";
   }
?>
</ul>

Du kannst natürlich auch die Ausgabe direkt in der While-Schleife vornehmen. Ich speichere hier die Werte erstmal in einem Array, ich hoffe, das ist übersichtlicher. Damit solltest Du erstmal weiterkommen. Um die jeweilige Überschrift aus der Tabelle Navigation zu holen würde ich einen extra Query vor den Kategorien-Query machen und das Ergebnis des Feldes Kategorie in den 2. Query einsetzen (dort wo ich 2 stehen habe).

Man kann die beiden Tabellen sicherlich auch über einen JOIN verknüpfen und nur einen Query machen, aber den bekomme ich auf die Schnelle nicht hin. Ausserdem könnte man Deine Tabellen noch weiter normalisieren und eine 3. Tabelle dazunehmen, die nur für die Verknüpfung zwischen den beiden vorhanden da ist...


Hier steht noch was dazu:

https://www.macuser.de/forum/showthread.php?t=196315

Und hier:

https://www.macuser.de/forum/showthread.php?t=199808


2nd
 
Zuletzt bearbeitet:
Zurück
Oben Unten