PHP Navigation in Verbindung mit mySQL

Funktioniert leider immer noch nicht. Habs jetzt so:

PHP:
if(isset($_GET['kategorie']))
{
$abfrage = @mysql_query("select * from `kategorie` where id = `$_GET[kategorie]`");
$ergebnis = mysql_fetch_assoc($abfrage);
		
	for($i=0;$i<$zaehler;$i++)
	{
		$ID_Kategorie = mysql_result($ergebnis,$i, "ID_Kategorie");
		$Kategorie = mysql_result($ergebnis, $i, "Kategorie");
		$Bild = mysql_result($ergebnis, $i, "Bild");
		$Beschreibung = mysql_result($ergebnis, $i, "Beschreibung");

		$sql = "select * from `kategorie` where `Kategorie` = '$ID_Kategorie'";
		$ergebnis2 = mysql_query($sql);
		$zaehler2 = mysql_num_rows($res2);
		
		echo "$Beschreibung";
	}
}
else
{

	$abfrage = "select * from `kategorie`";

	$ergebnis = mysql_query($abfrage);
	$zaehler = mysql_num_rows($ergebnis);
		
	for($i=0;$i<$zaehler;$i++)
	{
		$ID_Kategorie = mysql_result($ergebnis,$i, "ID_Kategorie");
		$Kategorie = mysql_result($ergebnis, $i, "Kategorie");
		$Bild = mysql_result($ergebnis, $i, "Bild");
		$Beschreibung = mysql_result($ergebnis, $i, "Beschreibung");

		$sql = "select * from `kategorie` where `Kategorie` = '$ID_Kategorie'";
		$ergebnis2 = mysql_query($sql);
		$zaehler2 = mysql_num_rows($ergebnis2);
		
		echo "<table align='center' border='0'><tr><td><a href='index.php?content=fotos&kategorie=$ID_Kategorie'><img border='0' src='$Bild'></a></td></tr></table>";
	}
}

Jetzt schreibt er mir einen Fehler in line 15, welche diese ist:

$ergebnis = mysql_fetch_assoc($abfrage);
 
Ja, du musst natürlich auch deine Daten eingeben, weil ich kenne ja nicht deine Tabellenstruktur, und die for schleife kannst du eigentlich rausschmeißen.
 
Sorry, versteh nicht ganz was du meinst. Welche Daten soll ich wo eintragen?

Hab jetzt die for Schleife rausgeschmissen, also folgendermaßen:

PHP:
if(isset($_GET['kategorie']))
{
	$abfrage = @mysql_query("select * from `kategorie` where id = `$_GET[kategorie]`");
	$ergebnis = mysql_fetch_assoc($abfrage);
		
	$ID_Kategorie = mysql_result($ergebnis, "ID_Kategorie");
	$Kategorie = mysql_result($ergebnis, "Kategorie");
	$Bild = mysql_result($ergebnis, "Bild");
	$Beschreibung = mysql_result($ergebnis, "Beschreibung");

	$sql = "select * from `kategorie` where `Kategorie` = '$ID_Kategorie'";
	$ergebnis2 = mysql_query($sql);
	$zaehler2 = mysql_num_rows($res2);
		
	echo "$Beschreibung";
}

Jetzt schreibt er mir allerdings bei fast jeder Zeile einen Fehler. Sorry, bin wirklich extrem begriffstützig, hab leider von mySQL so gut wie keine Ahnung :(
 
PHP:
if(isset($_GET['kategorie']))
{
    $abfrage = @mysql_query("select * from `kategorie` where Kategorie = `$_GET[kategorie]`");
    $ergebnis = mysql_fetch_assoc($abfrage);

    echo $ergebnis[Beschreibung];
}
 
Immer noch der gleiche Fehler in line 15 :(

Das ist diese Zeile: $ergebnis = mysql_fetch_assoc($abfrage);

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Programme\xampp\htdocs\rapidgeist\fotos.php on line 15

Gibts doch nicht :(
 
zeig mal bitte deine Tabellenstruktur.

tabellexk2.jpg


Und wie gesagt zwei Datensätze.
 
PHP:
$abfrage = @mysql_query("select * from `kategorie` where Kategorie = `$_GET[kategorie]`");

Mach es lieber so:

PHP:
$abfrage = mysql_query("select * from `kategorie` where Kategorie = '".$_GET['kategorie']."'") or die(mysql_error());

Dann gibt es auch eine vernünftiges Ergebnis bzw. eine Fehlermeldung.

Weiterhin werden Eingaben nicht mit `test` maskiert sondern mit einfachen Anführungszeichen.
 
Zuletzt bearbeitet:
PHP:
if(isset($_GET['kategorie']))
{
 $abfrage = mysql_query("select * from `kategorie` where ID_Kategorie = '$_GET[kategorie]'") or die(mysql_error());  
    $ergebnis = mysql_fetch_assoc($abfrage);

    echo $ergebnis[Beschreibung];
}
 
Zurück