Beiträge: 40
Themen: 13
Registriert seit: 03.11.2011
15.06.2012, 13:03
(Dieser Beitrag wurde zuletzt bearbeitet: 15.06.2012, 13:21 von Speil.)
Beiträge: 2.318
Themen: 13
Registriert seit: 09.11.2008
Wenn du Variablen ungeprüft in Queries einbaust, dann ist das eine Sicherheitslücke. Schau dir mal escape string oder prepare an.
Wenn du dich nur für ein bestimmtes Feld interessierst solltest du auch nur dieses abfragen, also SELECT uid statt SELECT *.
Zitat:Wie schreibe ich die Werte im Array jetzt am besten in einzelne Variablen, die ich dann in einem SELECT benutzen kann? Die Anzahl der Variablen ist ja immer unterschiedlich zur Menge der angehakten Checkboxen?
Gar nicht. Wenn du ein Array bekommst arbeitest du mit dem Array selbst.
Beiträge: 40
Themen: 13
Registriert seit: 03.11.2011
1. Select * ist nur zum testen, wenn alles läuft wird es durch die benötigten Felder ersetzt
2. wie schreibe ich dann den Select das er "SELECT * FROM users WHERE uid = ARRAY(1 bis X)" macht und eben alle Datensätze ausgiebt die ich vorher angehakt hab?
Am besten lässt du das ganze durch eine foreach Schleife laufen.
Falls das ganze übrigens in MyBB eingebunden werden soll, empfehle ich dir $db zu nutzen.
Beiträge: 25.802
Themen: 271
Registriert seit: 20.09.2005
MySQL kennt dafür "uid IN (1,2,3,4,5,...)".
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 40
Themen: 13
Registriert seit: 03.11.2011
Danke Stefan, das wars
Array $userid habe ich jetzt mit $out = implode(",", $userid) umgewandelt und in meinen SQL mit where ".TABLE_PREFIX."users.uid IN ($out) eingebaut