Hello Klaus,
select $primaray from $table where number in ($set);
$set = "'".implode("','",$_array)."'";Ich frage mich gerade zum wiederholten Male, warum denn viele Leute Zahlenwerte unter Anführungszeichen setzen, wenn sie ein SQL-Statement formulieren. Ich halte das für unsinnig.
Kann mir irgendjemand gute Gründe für diese Vorgehensweise nennen?
...weil es bei MySQL erlaubt ist und die Sache dadurch erheblich vereinfacht. Für den Fall, dass doch keine Zahl drinsteht, gibt's wenigstens auch keine Injektion. Siehe hierzu auch [pref:t=69312&m=398925]
Anderenefalls müsste jeder als numerisch erwartete Wert vorher auch auf numerisch überprüft werden. Eine Maskierung reicht gegen Injektionsgefahr nicht aus. (Ich spreche _nicht_ von Infektionsgefahr, die interessiert mich hier nicht).
Ich hoffe, ich konnte Dir weiterhelfen.
Liebe Grüße aus http://www.braunschweig.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen