Spaltenzähler: 50 Vars mit TRUE ODER FALSE, wie die TRUES zählen?

Hallo Forumler,
Meine Frage steht eigentlich schon in der Überschrift, hier nochmal in Langform:

Ich habe etwa 50 Variablen, die entweder TRUE oder FALSE sind (Wurden zuvor in einem Formular per Checkbox gewählt)

Wie kann ich es nun machen dass mir PHP alle Vars anguggt und mir sagt wieviele und vor allem WELCHE davon TRUE sind ohne dass ich für jedes eine extra If-Abfrage machen muss ?

Danke, der Spaltenzähler.

  1. Hallo,

    ich hätte da einen Vorschlag:
    Du könntest deine Checkboxen in einem Array gruppieren (d.h. statt einzelner Namen in ein Array packen), so nach dem Motto
    <input type="checkbox" name="meinecheckboxen[agb]" value="true">AGBs gelesen

    Dann sollte nach dem Submit in PHP ein Array ankommen:
    $checkboxen = $_POST["meinecheckboxen"];

    auf den direkten Wert kämst du mit $checkboxen[agb] (<-- glaub ich, könnte auch ['agb'] oder so sein) was aber viel wichtiger ist, du kannst eine foreach-Schleife machen:
    foreach($checkboxen AS $box => $value)
       if ($value == true) $anzahlgewaehlt++;

    MfG
    Rouven

    --

    -------------------
    ss:) zu:) ls:& fo:) de:< va:{ ch:? sh:) n4:( rl:? br:$ js:| ie:) fl:(
    1. Hallo Rouven!

      auf den direkten Wert kämst du mit $checkboxen[agb] (<-- glaub ich, könnte auch ['agb'] oder so sein)

      Besser $checkboxen['agb'] (siehe auch http://de2.php.net/manual/en/language.types.array.php, Abschnitt "Why is $foo[bar] wrong?").

      Ansonsten kannst Du ja auch aus den 50 Variablen eine 50 stellige Binärzahl zusammensetzen ... (und dann ggf. in ne andere Basis umrechnen, um weniger Stellen zu bekommen).
      Die Zahl wäre dann imho auch eindeutig, und Du könntest über die Zahl dann sofort auch rausbekommen, welche Checkboxen aktiviert waren, ist halt ein wenig rumrechnen, aber dafür hat man ja nen Rechner ;)

      MfG
      Götz

      --
      Losung für Dienstag, 23. März 2004
      Liebet den Herrn, alle seine Heiligen! (Psalm 31,24)
      Der Tempel Gottes ist heilig; der seid ihr. (1. Korinther 3,17)
      (http://www.losungen.de/heute.php3)