Willkommen in der Webstatt Zum Webstatt Blog und Stories
Al3x0r Al3x0r am 11.08.06 23:09

Guten Tag,

Ich habe bei mir eine Benutzerverwaltung, bei der die ganzen Benutzer in der Reihenfolge
1. alle Administratoren
2. alle Supermoderatoren
3. alle Moderatoren
4. Mitglieder
ausgegeben werden.

Jeder Benutzer kriegt dabei eine Checkbox, die seine Userid als Wert enthält:

<input type='checkbox' name='users[]' id='user_".$row1->user_id."'value='".$row1->user_id."' />

Nun zu meinem Problem. Ich möchte nun mehrere Benutzer auswählen und sie einer Gruppe zuordnen.

Wie muss die Auswertung aussehen?

Ich muss mit einer Schleife (, die sooft durchläuft wie es gecheckte Boxen gibt ), die Aktion für jeden User ausführen.

Nehmen wir an es geht um folgende MySQL Query der ausgeführt werden soll:

$sql1 = "UPDATE `$tb_user` SET `user_level` = '".$_POST['user_level']": WHERE `user_id` = '$users[x]';

Wie muss dann die Schleife aussehen ?

Danke für eure Hilfe

mfg Alex

netcup.de Warum gibt es hier Werbung?
Claw Claw am 11.08.06 23:15

Hmmmn?


$aUsers = $_POST['users'];

foreach ($aUsers as $sValue):
$sql1 = "UPDATE `$tb_user` SET `user_level` = '".$_POST['user_level']": WHERE `user_id` = '$sValue'";
endforeach;

Al3x0r Al3x0r am 11.08.06 23:16

Ich probiers gleich aus ...

habe grade das hier probiert

for($i=0; $i<sizeof($_POST['users']); $i++) {
echo $_POST['users'][$i];
}


Scheint aber nicht von Erfolg gesegnet.

mfg Alex

edit://

Erstmal danke @ Claw:

Ist endforeach wirklich ein PHP Befehl ? Der wird bei mir nämlich nicht eingefärbt und irgendwie produziert das von dir auch einen Fehler:

Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING

edit:// Habs, muss nur noch den Query darein basteln.

Kevz am 12.08.06 11:50

Was verstehst du unter befehl? - Claw hat nur eine andere Methode genommen. Du kannst diese aber genauso für IF Abfragen & co verwenden. Dies gilt auch für switch etc.

Snake am 12.08.06 12:01

allerdings keine gerne gesehene methode, die auch meines wissens in keinem offiziellen code style standard verwendet wird (pear, gnu etc)

Kevz am 12.08.06 12:26

Das stimmt, finde diese Methode auch nicht gerade schön. Hab Sie Persönlich noch nie genutzt und werde es auch nicht tun.

Wasili am 12.08.06 12:28

Der Fehler lag an einem fehlenden Punkt nach "$_POST['user_level']"

while(true):
endwhile;

if(true):
endif;

switch($var):
endswitch;


Alles andere notierungen.
Und ist es nicht egal, welchem "Code standard" das ganze entspricht? Darf man nicht was so notieren, wie man es selbst gerne hat? Wenn das ganze veröffentlicht wird - Na gut. Dann ist ein Einheitlicher Stil vorteilhaft. Aber solange es nur für die eigenen Augen ist ist das doch (Meiner Meinung nach) egal, wie man das aufschreibt...

Kevz am 12.08.06 14:28

Btw.:
Man sollte man schon den Code so schreiben - das er bei Fehler bedarf auch für andere Leserhaft ist. Denn das ist letztendlich auch wichtig - denn das vereinfacht ja im großen und ganzen die Fehlerbehandlung.

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt