Datenbankabfrage mit Mehrdimensionalem array

Weizenfeld

Grünschnabel
Hi Leute,

ich habe mir eine Datenbankabfrage erstellt in der ein Label abgefragt wird.
Sieht aus wie folgt:

PHP:
$wert = mysql_real_escape_string((trim(htmlspecialchars($_GET["info"]))));
    
$label = array("abc", "xyz");

if (in_array($_GET['info'],$label))
 {
    $query = 'SELECT * FROM products WHERE label = "' . $_GET['info']. '"';
 }


Jetzt möchte ich jedoch noch andere query abfragen stellen, z.B:

PHP:
SELECT * FROM products ORDER BY RAND() LIMIT 0 , 8'

weitere würden folgen.

Die feste SQL Abfrage wäre immer
PHP:
 "SELECT * FROM products"
und dann müßte mit einem mehrdimensionalem Array die weitere Abfrage erstellt werden.

Die Frage ist nur wie?

Mir schwirrt grad sowas im Kopf:

PHP:
$label = array(array("abc", "xyz"), array( "WHERE label = "' . $_GET['info']. '", "ORDER BY RAND() LIMIT 0 , 8") );

Nur wie baue ich nun den query zusammen?
PHP:
    if (in_array($_GET['info'],$label))
    {
    $query = 'SELECT * FROM products ********************  '"';
    }
Hab ihr da eine Idee?

Schöne Grüße
 
Hallo,

ich verstehe zwar nicht den zweck der Abfrage aber vielleicht hilft dir folgendes:

PHP:
$sql = "select * from table ";
if($wert) {
$sql .= "where field = value ";
}else{
$sql .= "limit $start, $anzahl"
}
 
Zuletzt bearbeitet:
Ja sensationell! Läuft auf anhieb! Richtig Sinn machen solche Abfragen erst bei wesentlich mehr querys! Stell dier vor du hast 100 verschiedene Abfragen und must davon 30 Stück ändern, dann reicht es einfach nur die Werte im mehrdimensionlanen array zu ändern! Also keine direkten Änderungen im sql query selbst! Beispiel: Es kommen neue Marken hinzu, dann reicht es die einfach im array hineinzuschreiben! Das spart viel Arbeit!

Vielen Dank nochmal für deine Hilfe!

Gruß,
Weizen
 
Zurück