Mailinglisten-Archive |
Hallo, Nur zwei Tips dazu: 1. Soweit ich weiss kann die IN() Abfrage nur 256 Elemente verarbeiten, deshalb bietet sich an, dein Array oder Hash ersteinmal in 256er Arrays aufzuspalten (in PHP mittels array_chunk()) um diese in einer Schleife nacheinander abzusetzen. 2. Die Elemente in dem Array/Hash sind VOR dem umwandeln in Strings MySQL-sicher zu machen, da du den entstehenden String mit den single- quotes nicht mehr gut escapen kannst. Sprich das Array durchgehen und jedes Element mit addslashes bzw. mysql_escape_string sicher machen. Viele Gruesse, Ilja On 14 Feb 2005 at 23:30, Norbert Pfeiffer wrote: > Hallo Alfred, > > > ich moechte eine Select-Abfrage mit einem Array verknuepfen. > > z.B. so "select Ort from Adresse where Name in($array);" > hmm, > im Prinzip ist das richtig, aber eben nur im Prinzip. > > Wenn Du das Array mit: echo $array; anzeigen willst, > klappt das ja auch nicht. Du musst halt aus dem Array > einen String formen und den in das Query einfuegen: > <? > $array = array('Bernd', 'Rolf', 'Hans', 'Egon'); > $strng = "'".implode($array, "', '")."'"; > $query = "select Ort from Adresse where Name in ($strng)"; > echo $strng."\n"; > echo $query."\n"; > ?> > Nun sollte es gehen ... > > > m. b. G. Norbert > _____________________ > normal: 02686-987103 > Notruf: 0163-3613642 > --------------------- > e.o.m. > > -- > Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter > -->> http://www.4t2.com/mysql > > -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive