checkboxen und array

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • checkboxen und array

    hallo forum,

    ich hoffe, dass ich hier hilfe für mein php-problem finde.

    ich habe ein formular:
    Code:
    <form method="post" action="test.php"><br>
    
    03 Isst du Obst?<br><br>
    <input type="radio" name="q0301" value="1"> ja<br>
    <input type="radio" name="q0301" value="2"> nein<br><br>
    
    04 Wenn die antwort bei 03 JA war, welches Obst isst du?<br><br>
    <input type="checkbox" name="q0401[]" value="1"> Apfel<br>
    <input type="checkbox" name="q0401[]" value="2"> Birne<br>
    <input type="checkbox" name="q0401[]" value="3"> Banane<br>
    <input type="checkbox" name="q0401[]" value="4"> Erdbeere<br>
    <input type="checkbox" name="q0401[]" value="5"> Sonstiges<br><br>
    
    <input type="submit" value="--- Abschicken ---">
    </form>
    und ein php script (test.php), dass das formular 'auswertet'.
    PHP-Code:
    <?php

    echo "DATEN &Uuml;BERPR&Uuml;FEN<br><br>";

    /* FRAGE 03 */

    if ( $q0301 == "" ) {
    echo 
    "Bitte etwas bei Frage 03 ausw&auml;hlen.";
    die;
    } elseif ( 
    $q0301 == "1" ) {
    $aq0301 "ja";
    echo 
    "03 Isst du Obst? $aq0301<br>";
    } elseif ( 
    $q0301 == "2" ) {
    $aq0301 "nein";
    echo 
    "03 Isst du Obst? $aq0301<br>";
    }

    /* FRAGE 04 */

    if ( $q0301 == "1" && $q0401 == "" ) {
    echo 
    "Bitte etwas bei Frage 04 ausw&auml;hlen.";
    die;


    if ( 
    $q0301 == "2" ) {
    $q0401[0] = "9";
    $q0401[1] = "9";
    $q0401[2] = "9";
    $q0401[3] = "9";
    $q0401[4] = "9";
    echo 
    "04 Wenn die antwort bei 03 JA war, welches Obst isst du? k.A.";
    }

    ?>
    das ist der stand der dinge und nun hänge ich fest, weil ich ein problem mit dem array $q0401 habe.

    1.) wie ermittle ich, welche werte überhaupt existieren und wie fülle ich die nicht existierenden mit dem wert 9?

    2.) wie wandle ich die in 1.) ermittelten existierenden werte wieder in apfel-sonstiges um?

    vielen dank für eure antworten im voraus
    gruss
    tanaka

  • #2
    1.) wie ermittle ich, welche werte überhaupt existieren und wie fülle ich die nicht existierenden mit dem wert 9?
    print_r($_POST['q0401']) gibt aufschluss über die strucktur bzw. den Inhalt des arrays. kannst du also wie ein ganz normales array behandeln.

    konkretes Problem?

    2.) wie wandle ich die in 1.) ermittelten existierenden werte wieder in apfel-sonstiges um?
    na, einfach ein weiteres array:

    $obst(1=> 'apfel', 2=> 'sonstiges');

    echo $obst[1]; // gibt apfel aus.

    Kommentar


    • #3
      hallo TobiaZ,

      danke für deine antwort.

      print_r($_POST['q0401']) gibt aufschluss über die strucktur bzw. den Inhalt des arrays. kannst du also wie ein ganz normales array behandeln.
      konkretes Problem?
      angenommenerweise ich klicke alle checkboxen bei frage 4 an, dann bringt mir ein
      print_r($_POST['q0401'])
      ja folgendes ergebnis:
      Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
      wenn ich nun aber nur birne und erdbeere anklicke erhalte ich ja folgendes ergebnis:
      Array ( [0] => 2 [1] => 4 )

      das konkrete problem ist nun, wie schaffe ich es, dass in obigem beispiel das array so aussieht (also nur birne und erdbeere angeklickt - die daten werden später in textfile geschrieben und müssen so also immer an der gleichen stelle stehen):

      Array ( [0] => 9 [1] => 2 [2] => 9 [3] => 4 [4] => 9 )

      na, einfach ein weiteres array:

      $obst(1=> 'apfel', 2=> 'sonstiges');

      echo $obst[1]; // gibt apfel aus.
      wie bringe ich dass mit dem obigen in zusammenhang? hast du ein konkretes beispiel? ich muss ja nur die ermittelten, existierenden werte umwandeln, also immer
      1 = apfel
      2 = birne
      3 = banane
      4 = erdbeere
      5 = sonstiges

      danke
      gruss
      tanaka

      Kommentar

      Lädt...
      X