[Anfänger] Array in mehrere varialben Schreiben - Druckversion +- MyBB.de Forum (https://www.mybb.de/forum) +-- Forum: Sonstiges (https://www.mybb.de/forum/forum-1.html) +--- Forum: Programmierung (https://www.mybb.de/forum/forum-32.html) +--- Thema: [Anfänger] Array in mehrere varialben Schreiben (/thread-25851.html) |
[Anfänger] Array in mehrere varialben Schreiben - Speil - 15.06.2012 Hi, ich habe eine Seite, in der ich einen Teil des Usernamens eingebe und dann sollen alle IDs ausgespuckt werden: SQL: PHP-Code: $username = $_POST["username"]; Ausgabe: PHP-Code: echo "<form action=\"compare_uebereinstimmungen_result.php\" method=\"post\">"; Jetzt kann man diverse IDs anhaken (Checkboxfelder) und kommt auf die Seite compare_uebereinstimmungen_result.php auf der ich das Array mit $_POST['checkboxuser'] abrufe. Meine Frage: 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? Gruß RE: [Anfänger] Array in mehrere varialben Schreiben - frostschutz - 15.06.2012 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. RE: [Anfänger] Array in mehrere varialben Schreiben - Speil - 15.06.2012 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? RE: [Anfänger] Array in mehrere varialben Schreiben - King Louis - 15.06.2012 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. RE: [Anfänger] Array in mehrere varialben Schreiben - StefanT - 15.06.2012 MySQL kennt dafür "uid IN (1,2,3,4,5,...)". RE: [Anfänger] Array in mehrere varialben Schreiben - Speil - 15.06.2012 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 |