Hallo,
ich möchte in einer while-schleife den Inhalt aus einer Tabelle einer Datenbank ausgeben. Die Tabelle heißt beitrag und sieht aus wie folgt:
Desweiteren möchte ich auf die folgende Tabelle zugreifen:
In beiden Fällen handelt es sich um MySQL-Anweisungen.
In meinem php-Quellcode lasse ich innerhalb einer while-Schleife die Einträge aus der "beitrag"-Tabelle ausgeben. Jedoch möchte ich nicht den Fremdschlüssel autor_id ausgegeben bekommen, sondern den "name" der "autor"-tabelle.
Code:
Leider klappt das nicht. Weiß jemand Rat?
Gruss
ich möchte in einer while-schleife den Inhalt aus einer Tabelle einer Datenbank ausgeben. Die Tabelle heißt beitrag und sieht aus wie folgt:
CREATE TABLE beitrag(
id INT PRIMARY KEY AUTO_INCREMENT,
kurzbeschreibung VARCHAR(100) NOT NULL,
text VARCHAR(1000) NOT NULL,
fk_autor INT Not Null REFERENCES autor(id),
fk_kategorie INT not null REFERENCES kategorie(id),
datum TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Desweiteren möchte ich auf die folgende Tabelle zugreifen:
CREATE TABLE autor (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL
);
In beiden Fällen handelt es sich um MySQL-Anweisungen.
In meinem php-Quellcode lasse ich innerhalb einer while-Schleife die Einträge aus der "beitrag"-Tabelle ausgeben. Jedoch möchte ich nicht den Fremdschlüssel autor_id ausgegeben bekommen, sondern den "name" der "autor"-tabelle.
Code:
<!DOCTYPE html>
<html>
<head>
<meta charset = "UTF-8">
<link type="text/css" rel="stylesheet" href="style.css" />
<title>Webforum</title>
</head>
<body>
<div id= "header">
<h2>WebForum</h2>
</div>
<div id="liste">
<!--Verbindung mit Datenbank-->
<?php
try{
$dbh = new PDO('mysql:host=localhost;dbname=***',***','***' );
}
catch (PDOException $e){
echo "Error: " . $e->getMessage();
print_r($dbh->errorInfo());
}
$kat_id = $_REQUEST['kat_id'];
$kat_anzeige = $dbh->query("SELECT name FROM kategorie WHERE id = '$kat_id';");
$row = $kat_anzeige->fetch(PDO::FETCH_OBJ);
?> <h4>Kategorie: <?
echo $row->name;?></h4>
</br></br>
<!-- Anzeige der vorhandenen Beiträge -->
<?
$beitragsanzeige = $dbh->query("SELECT * FROM beitrag WHERE fk_kategorie = '$kat_id';");
if($beitragsanzeige){
while($row = $beitragsanzeige->fetch(PDO::FETCH_OBJ)){
?>Autor: <?
$autor_anzeige = $dbh2->query("SELECT name FROM autor WHERE fk_autor = id;");
$row2=$autoren_anzeige->fetch(PDO::FETCH_OBJ);
echo $row2->name;?></br><?
?>Kategorie: <?echo $row->fk_kategorie;?></br><?
?>Datum: <?echo $row->datum;?></br><?
?>Kurzbeschreibung: <?echo $row->kurzbeschreibung;?></br><?
?><a href="beitrag_liste_einzel.php?kat_id=<?echo $kat_id;?>&beitrag_id=<?echo $row->id;?>">Beitrag lesen</a>
<a href="beitrag_loeschen.php?beitrag_id=<?echo $row->id;?>">Beitrag löschen</a></br></br>
<?
}
}
?>
</br>
<a href="beitrag_erstellen.php?kat_id=<?echo $kat_id;?>">Beitrag erstellen</a>
</br></br></br>
<a href="index.php">Startseite</a>
</div>
</body>
</html>
Leider klappt das nicht. Weiß jemand Rat?
Gruss