öhm, ich weiß nicht, ob wir uns da jetzt verstehen...
also du machst ja für jede zeile einen neuen query um festzustellen, ob die id vorhanden ist. d.h. die zahl dieser queries ist gleich der zahl der zeilen.
wenn du aber bereits vor dem loop durch das logfile in EINEM query alle ids holst und in ein array packst, bleibt es immer bei 1, egal wieviele zeilen das sind.
dafür musst du allerdings bei einer id-zeile erneut einen query auf den namen machen, was aber im endeffekt wohl höchstens einen query insgesamt mehr (den für die ids) bedeutet, wenn jede zeile eine id enthalten sollte. da dies aber weit seltener auftritt, optimierst du hier sehr gut.
zusätzlich kannst du (je nach datenmenge) auch einfach am anfang die ids UND die namen dazu holen, dann hast du selbst im falle von gefundenen ids insgesamt nur ein select-query.
mehrere ids (und namen) holst du wie folgt:
|
Quellcode
|
1
2
3
4
5
|
$data = array(); // hier kommen 2er-tupel (id, name) rein
$result = mysql_query('SELECT id, name FROM mix;');
while ($row = mysql_fetch_assoc($result)) {
$data[] = $row;
}
|
ach und äh, die zeilennummern sind irgendwie in ner anderen höhe als die codezeilen... wie sinnfrei.