Sven Rautenberg: laufvariable bei php und mysql

Beitrag lesen

Moin!

$vsql1 = "SELECT image FROM f\_sommer2008 ORDER BY nr DESC";
$vresult1 = mysql_query($vsql1);

$vsql2 = "SELECT image FROM f\_sommer2007 ORDER BY nr DESC";
$vresult2 = mysql_query($vsql2);

$vsql3 = "SELECT image FROM f\_sommer2006 ORDER BY nr DESC";
$vresult3 = mysql_query($vsql3);

$vsql4 = "SELECT image FROM f\_sommer2005 ORDER BY nr DESC";
$vresult4 = mysql_query($vsql4);

$vsql5 = "SELECT image FROM f\_sommer2004 ORDER BY nr DESC";
$vresult5 = mysql_query($vsql5);

Wenn du fünf Tabellen mit exakt dem gleichen Layout hast, deren einziges Unterscheidungskriterium ist, dass in jeder einzelnen Tabelle Bilddaten aus einem bestimmten Jahr stecken, dann kombiniere alle deine Tabellen zu einer einzigen, und füge ein weiteres Tabellenfeld "Jahr" an, um die Datensätze bei Bedarf auseinanderzuhalten.

Eventuell ist es sogar schlauer, anstelle einer Jahreszahl direkt das Aufnahmedatum als DATE-Spalte einzufügen - dann kannst du bei Bedarf nicht nur nach Jahren gruppieren, sondern innerhalb der Jahre auch nach Monaten, Tagen, Wochentagen (Bilder von Sonntags), Monaten (Bilder aus dem Mai) etc.

Wenn die Bilder auch noch eine Uhrzeit in ihren Metadaten haben, wäre sogar ein DATETIME-Feld richtig, dann kannst du auch "Bilder zur Geisterstunde (0-1 Uhr)" abfragen, oder "Bilder, halb Zehn in Deutschland".

So, wie du es derzeit machst, ist es jedenfalls der falsche Weg.

- Sven Rautenberg