Björn: Checkboxen verknüpfen und übergabe

Folgendes:
Ich habe eine Menge Team-Mitglieder, die in verschiedenen Teams sind.
Gewünscht ist eine Darstellung der Teams mit den jeweiligen Mitgliedern.
Man soll sowohl die Mitglieder einzeln per Checkbox selektieren können, aber auch das komplette Team mit einer Checkbox, was soweit auch noch kein Problem darstellt, solange ich die Team-NAmen fest bestimme.

<input type="checkbox" name="all" onclick="select_all_mitglieder(this.checked, 'team1[]')">
while ($x<$mitglieder){
echo"<input type="checkbox" name="team1[]" value="$mitglied[$x]">$mitglied[$x]";
$x++;
}
<input type="checkbox" name="all" onclick="select_all_mitglieder(this.checked, 'team2[]')">
while ($x<$mitglieder){
echo"<input type="checkbox" name="team2[]" value="$mitglied[$x]">$mitglied[$x]";
$x++;
}

Wenn ich die Teams mit einer festen Variable bestimme (also Team1, Team2 usw.) kann ich das ganze auch super an das Folgeformular übergeben.

Mein Problem ist es aber, dass ich nicht weiß wieviele Teams es werden können. Also die Team-Variable kann variieren und darf nicht fest bestimmt werden. Und das bekomme ich irgendwie nicht hin. Sobald ich statt "team1[]" "team$x[]" oder "$variable[]" mache, schießt der mir nen Fehler raus. Ich habe schon einges ausprobiert, finde aber leider nicht die Lösung.
Ich hoffe, dass ich einigermaßen nachvollziebar mein Problem geschilder habe. Wenn nicht, muss ich wohl ein bischen mehr Quellcode geben.

Ich freue mich wirklich über jede Hilfe...

Danke im vorraus

  1. Mahlzeit,

    Man soll sowohl die Mitglieder einzeln per Checkbox selektieren können, aber auch das komplette Team mit einer Checkbox, was soweit auch noch kein Problem darstellt, solange ich die Team-NAmen fest bestimme.

    Den solltest Du in jedem Fall fest bestimmen.

    <input type="checkbox" name="all" onclick="select_all_mitglieder(this.checked, 'team1[]')">
    while ($x<$mitglieder){
    echo"<input type="checkbox" name="team1[]" value="$mitglied[$x]">$mitglied[$x]";
    $x++;
    }
    <input type="checkbox" name="all" onclick="select_all_mitglieder(this.checked, 'team2[]')">
    while ($x<$mitglieder){
    echo"<input type="checkbox" name="team2[]" value="$mitglied[$x]">$mitglied[$x]";
    $x++;
    }

    Anhand Deines Codes vermute ich, dass Du PHP benutzt?

    Ich würde das ungefähr folgendermaßen machen:

      
    /*  
     * In $teams müsste die Anzahl der Teams stehen  
     */  
    for ($i = 1; $i <= $teams; $i++) {  
      /*  
       * Allerlei tun, z.B. $mitglieder mit der Anzahl der Mitglieder dieses Teams füllen, Mitglieder in Array $mitglied füllen usw.  
       */  
      printf('<input type="checkbox" name="team%d_all" onclick="select_all_mitglieder(this.checked, \'team%d[]\');">', $i, $i);  
      $x = 1;  
      
      while ($x < $mitglieder) {  
        printf('<input type="checkbox" id="team%d_%d" name="team%d[]" value="%s"><label for="team%d_%d">%s</label>', $i, $x, $i, htmlspecialchars($mitglied[$x]), $i, $x, htmlspecialchars($mitglied[$x]));  
      $x++;  
    }
    

    Mein Problem ist es aber, dass ich nicht weiß wieviele Teams es werden können.

    Macht doch nichts - dafür gibt's doch Schleifen.

    Und das bekomme ich irgendwie nicht hin. Sobald ich statt "team1[]" "team$x[]" oder "$variable[]" mache, schießt der mir nen Fehler raus.

    1. Wer ist "der"?

    2. Welchen Fehler "schießt" der raus?

    3. Wieso enthältst Du uns diesen vor? Bist Du der irrigen Annahme, jeder Teilnehmer dieses Forums nennt eine funktionierende Glaskugel sein eigen?

    Ich habe schon einges ausprobiert, finde aber leider nicht die Lösung.

    Wir auch nur mit Raten und viel Glück - weil Du uns elementare Informationen vorenthältst.

    Ich hoffe, dass ich einigermaßen nachvollziebar mein Problem geschilder habe. Wenn nicht, muss ich wohl ein bischen mehr Quellcode geben.

    Nein. Ja.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
    1. Moin!

      <input type="checkbox" id="team%d_%d" name="team%d[]" value="%s"><label for="team%d_%d">%s</label>

      Wenn du das <label> gleich um das Input-Feld drumrumlegst, kannst du dir die nervige ID sparen:

      <label><input type="checkbox" name="team%d[]" value="%s">%s</label>

      - Sven Rautenberg

      --
      "Love your nation - respect the others."
      1. Danke, das probiere ich gleich mal aus...

        Dank an Dich

        Gruß Björn

      2. Mahlzeit,

        <input type="checkbox" id="team%d_%d" name="team%d[]" value="%s"><label for="team%d_%d">%s</label>

        Wenn du das <label> gleich um das Input-Feld drumrumlegst, kannst du dir die nervige ID sparen:

        <label><input type="checkbox" name="team%d[]" value="%s">%s</label>

        Ich meinte, ich hätte mal gelesen, dass es mit dieser Art der Verschachtelung Probleme gab (in bestimmten Browsern? Ich weiß es nicht mehr) - deshalb habe ich immer die Schreibweise mit IDs benutzt ...

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
        1. Moin!

          Wenn du das <label> gleich um das Input-Feld drumrumlegst, kannst du dir die nervige ID sparen:

          Ich meinte, ich hätte mal gelesen, dass es mit dieser Art der Verschachtelung Probleme gab (in bestimmten Browsern? Ich weiß es nicht mehr) - deshalb habe ich immer die Schreibweise mit IDs benutzt ...

          Davon habe ich noch nie was gehört - was natürlich nichts heißen muss. :)

          - Sven Rautenberg

          --
          "Love your nation - respect the others."
          1. [latex]Mae  govannen![/latex]

            Wenn du das <label> gleich um das Input-Feld drumrumlegst, kannst du dir die nervige ID sparen:

            Ich meinte, ich hätte mal gelesen, dass es mit dieser Art der Verschachtelung Probleme gab (in bestimmten Browsern? Ich weiß es nicht mehr) - deshalb habe ich immer die Schreibweise mit IDs benutzt ...

            Davon habe ich noch nie was gehört - was natürlich nichts heißen muss. :)

            Handelt sich auch auch nur um IE 5 & IE 6, also eigentlich nichts wichtiges

            Test

            Cü,

            Kai

            --
            When the limos return for their final review, it's all thru'
            - all they can see is the morning goo.
            "There's no-one left alive - must be draw."
            So the Blackcap Barons toss a coin to settle the score.
            ie:{ fl:( br:< va:) ls:? fo:| rl:? n4:° ss:{ de:] js:| ch:? mo:| zu:|]
      3. Funzt auch wunderbar - Prima.

    2. Krass!!

      Ich bin echt beeindruckt.
      Das funzt genauso, wie ich es wollte.

      Waren also Doch genug Informationen für Dich ;)

      Vielen, vielen Dank für Deine Hilfe

      Gruß und alles Gute für Dich und Deine Lieben

      Björn

      1. Mahlzeit,

        Waren also Doch genug Informationen für Dich ;)

        Wie ich schrieb: "auch nur mit Raten und viel Glück" ... :-)

        Vielen, vielen Dank für Deine Hilfe

        Kein Problem, gern geschehen.

        MfG,
        EKKi

        --
        sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|