Hi,
Ein anderer Workaround wäre, die Anzahl der Fragezeichen der Anzahl der Werte anzupassen.
$sql = sprintf('… NOT IN (%s)', implode(',', array_fill(0, count($excludeIDs), '?')));
Desweiteren braucht man einen zweiten Kopfstand, um die variable Anzahl der Werte an das Statement zu binden: </archiv/2008/2/t167140/#m1090087>
Na, das wird mir dann zu umstaendlich - dann feuere ich doch lieber direkt mit mysqli->query eine selbst zusammengebastelte Abfrage ab.
Dann komme ich zwar ohne $STMT->bind_params() aus - aber "sauber" kommt mir das nicht vor.
Aus Sicht eines Datenbänkers könnte eine Antwort lauten: Korrigiere dein Datenlayout, so dass du mit JOINs arbeiten kannst. Wenn das nicht geht (vielleicht weil die Werte aus einer vom Anwender zu erstellenden Kreuzchenliste kommen), dann wirst du wohl einen der Workarounds nehmen müssen.
Ich moechte zusaetzlich zu ein paar Datensaetze, die auf einer Seite mittels bestimmter Auswahlkriterien angezeigt werden, zusaetzlich noch ein paar weitere, zufaellig ausgeaehlte anzeigen - ohne dabei "Doppelte" zu bekommen.
MfG ChrisB
„This is the author's opinion, not necessarily that of Starbucks.“