suntrop
Erfahrenes Mitglied
Hallo.
Ich lasse aus einer Kundenliste ID, Name, E-Mail und Produkt ausgeben. Zusätzlich lasse ich, je nach Käuferstatus die Zeilenhintergrundfarbe grün oder blau ausgeben. Allerdings steht der Status in einer Zweiten Tabelle und so muss ich für jede Zeile eine neue MySQL-Anfrage senden, was bei einer Liste von ein paar Hundert Kunden (meiner Meinung nach) sehr viele Queries sind.
Kann ich das irgendwie vermeiden oder die Abfrage effizienter machen? Keine Ahung wie, aber ich Frage mal nach
Oder ist es vielleicht üblich, auch sehr viele Abfragen zu senden?
Hier mal ein Auszug aus der Datei
Für jeden Durchlauf der While-Schleife wird eine Anfrage für den Status gesendet. Ich finde das nicht gerade sparsam
Ich lasse aus einer Kundenliste ID, Name, E-Mail und Produkt ausgeben. Zusätzlich lasse ich, je nach Käuferstatus die Zeilenhintergrundfarbe grün oder blau ausgeben. Allerdings steht der Status in einer Zweiten Tabelle und so muss ich für jede Zeile eine neue MySQL-Anfrage senden, was bei einer Liste von ein paar Hundert Kunden (meiner Meinung nach) sehr viele Queries sind.
Kann ich das irgendwie vermeiden oder die Abfrage effizienter machen? Keine Ahung wie, aber ich Frage mal nach
Oder ist es vielleicht üblich, auch sehr viele Abfragen zu senden?
Hier mal ein Auszug aus der Datei
PHP:
echo "</thead>\n";
while($row = mysql_fetch_assoc($rs))
{
....
echo "<td".status($row['id']).">".$row["id"]."</td>\n";
....
}
echo "</table>\n";
PHP:
function status($id)
{
// Status aus Tabelle info lesen
$sqlInfo_s = "SELECT status FROM info WHERE uid='$id'";
$rs = mysql_query($sqlInfo_s);
$count = mysql_num_rows($rs);
if (!$count) {
return ' style=""';
} else {
$st = mysql_fetch_assoc($rs);
if ($st[status] == '') {
return ' style="x"';
} else if ($st[status] == '0') {
return ' style="background-color:blue;"';
} else if ($st[status] == '1') {
return ' style="background-color:green;"';
} else {
return ' class=""';
}
}
}