Hallo,
Meine DB (alles in einer Tabelle) enhält Projekte die nummeriert und zu Gruppen zugeordnet sind(z.B. Gruppe a enhält 3 Projekte mit der Nummer 1 bis 3, Gruppe b enhält 2 Projekte mit der Nummer 1 bis 2). Über die Adresszeile frage ich jeweils ein Projekt ab: abfrage.php?wahl_a=1 Das ergibt die Ausgabe vom Projekt Nr 1 der Gruppe a. Meine Abfrage PHP sieht folgendermaßen aus:
<?php
error_reporting(E_ALL);
ini_set("display_errors", true);
include ("connect.inc.php");
include ("function.inc.php");
if (isset($_GET['wahl_a']))
{
//Abfrage Projekt
$query = "SELECT
id,
nummer,
name,
gruppe,
text,
bild
FROM
links
WHERE
gruppe = 'a' AND
nummer = " . mysql_real_escape_string($_GET['wahl_a']);
$result = abfrage($query, $dbCon);
$num = mysql_num_rows($result);
if (mysql_num_rows($result))
{
include "Test-AusgabeDB.html";
}
else
{
echo "Schade, aber der Parameter ist nicht vergeben.";
}
}
elseif (isset($_GET['wahl_b']))
{
//Abfrage Projekt
$query = "SELECT
id,
nummer,
name,
gruppe,
text,
bild
FROM
links
WHERE
gruppe = 'b' AND
nummer = " . mysql_real_escape_string($_GET['wahl_b']);
$result = abfrage($query, $dbCon);
$num = mysql_num_rows($result);
if (mysql_num_rows($result))
{
include "Test-AusgabeDB.html";
}
else
{
echo "Schade, aber der Parameter ist nicht vergeben.";
}
}
else
{
echo "Kein Parameter vorhanden";
}
?>
Alles anzeigen
Wie man sieht, wird je nach Eingabe von wahl_a oder wahl_b die Gruppe a oder b angespochen. Die Abfrage filtert die Datensätze nach den jeweiligen Gruppen heraus. Allerdings finde ich den wiederholten Code nicht so günstig. Gerade wenn man weitere Gruppen hinzufügt erhält man doppelten Code. Mir fällt aber leider keine bessere Variante ein. Könnt ihr helfen?
Danke Sero