Kalle: wie ein Array posten

Hallo, Forum,

in einem Formular kreuze ich Bedingungen an:

<FORM ...>
<input type=checkbox name='anbietera[]' value='1'>
<input type=checkbox name='anbietera[]' value='2'>
...
</FORM>

als Ergebnis erwarte ich ein Array mit den Werten 1, 5, 7, 13, ...

$anbietera[] = $_POST['anbietera[]'];

aber so funzt es nicht.

Hat jemand eine Idee ?

Liebe Grüße aus Worms. Kalle.

  1. Hallo Kalle,

    <input type=checkbox name='anbietera[]' value='1'>
      $anbietera[] = $_POST['anbietera[]'];

    deine Daten stehen in dem Array $_POST['anbietera'] (schreib mal print_r($_POST['anbietera']) in das Script, dass die Daten bekommt).

    aber so funzt es nicht.

    was "funzt" nicht? Fehlermeldung? Verhalten soll/ist? was kommt im Browser an?

    Grüße aus Nürnberg
    Tobias

    --
    Selfcode: sh:( fo:) ch:? rl:( br:< n4:& ie:% mo:| va:) de:] zu:) fl:( ss:| ls:[ js:|
  2. Hi!

    als Ergebnis erwarte ich ein Array mit den Werten 1, 5, 7, 13, ...

    $anbietera[] = $_POST['anbietera[]'];

    aber so funzt es nicht.

    Du weißt was $arrayname[] in PHP bedeutet?
    Wenn nicht solltest Du das lesen: http://php3.de/manual/de/language.types.array.php

    Hat jemand eine Idee ?

    Ja, lies mal:
    http://php3.de/manual/de/language.variables.external.php#AEN3887
    http://php-faq.de/q/q-formular-select-multiple.html

    Grüße
    Andreas

  3. Hallöchen,

    habe selbst ungeduldig probiert und eine Lösung gefunden:

    $anbietera         = array();
      $anbietera         = $_POST['anbietera'];
      echo $anbietera[0]."/".$anbietera[1]."<br>";

    Warum klappt DAS nicht:

    $anbietera         = array( $_POST['anbietera'] );

    Gruß aus Worms, Kalle

    1. Hallo!

      habe selbst ungeduldig probiert und eine Lösung gefunden:

      $anbietera         = array();
        $anbietera         = $_POST['anbietera'];
        echo $anbietera[0]."/".$anbietera[1]."<br>";

      Warum klappt DAS nicht:

      $anbietera         = array( $_POST['anbietera'] );

      Was heißt "klappt nicht"? Gibt es eine Fehlermeldung? Passiert nicht das was Du erwartest? Was erwartest Du?

      Weißt Du was array() macht? Wenn nicht lies es im Manual nach:
      http://php3.de/manual/de/function.array.php

      Und ich empfehle Dir die anderen Links die ich Dir unten gepostet habe zu lesen, damit Du verstehst was genau Du da machst ;-)

      Grüße
      Andreas

    2. Hallo

      Warum klappt DAS nicht:

      $anbietera         = array( $_POST['anbietera'] );

      Du überführst Das mit POST übergebene Array _nochmal_ in ein Array.
      Dieses dürfte nur ein Element (0) haben, welches wiederum die aus
      dem Formular stammenden Elemente des ersten Arrays enthält.
      Somit hast du ein zweidimensionales Array. Herzlichen Glückwunsch. ;-)

      Das wirst du an der Stelle aber höchstwahrscheinlich nicht brauchen.
      $anbietera = $_POST["anbietera"]; sollte reichen.

      Tschö, Auge

  4. Danke Andreas und Tobias,

    ich lese mir die Links morgen in Ruhe durch.

    Kalle