Chris: Daten werden falsch an Variable übergeben

Hy Leute,

probier jetzt schon eine weile Daten an eine Variable zu übergeben.

  
if(!$_POST['Kinderalter']){  
                      echo '<input name="Kinderalter[]" type="text" size="2">  
       <input type="hidden" name="Kinderanzahl" value="'.$_POST['Kinderanzahl'].'">';  
                      }  
       else {  
        echo '<input type="text" name="Kinderalter[]" size="2" value="'.$_POST['Kinderalter'].'">  
       <input type="hidden" name="Kinderanzahl" value="'.$_POST['Kinderanzahl'].'">';  
                      }  
  

Irgendie gehen aber die Daten verlohren.
Entweder es steht im ausgewerteten Textfeld $Array oder 1.
Ixh weiß nicht was ich falsch mache, normal müsste er doch einfach die Daten welche mit POST übertragen werden, auswerten.
Hab es schon probiert das ich einer Variable den Wert erst zuweise und dann mit Echo ausgebe. Funktioniert aber auch nicht.

  
$Alter = (int)$_POST["Kinderalter"];  
       echo $Alter;  

LG Chris

  1. hi,

    Ixh weiß nicht was ich falsch mache

    Du betreibst kein sinnvolles Debugging.

    Kontrollausgabe des Wertes, den du verwenden möchtest - $_POST['Kinderanzahl'] - mittels var_dump oder print_r.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
  2. echo $begrüßung;

    echo '<input name="Kinderalter[]" type="text" size="2">

    Warum hast du da [] angehängt? Dies bewirkt, dass PHP sowas wie $var[] = wert; macht. Das heißt, es legt $var als Array an, falls es noch nicht da war, und fügt ein Element an.

    Entweder es steht im ausgewerteten Textfeld $Array oder 1.

    Ja, die Umwandlung eines Arrays in einen String, welcher bei echo benötigt wird, ergibt 'Array'.

    $Alter = (int)$_POST["Kinderalter"];

    Ein Array in einen Integer umwandeln ist auch nicht grade sinnvoll.

    Wenn zu Zweifel am Variableninhalt hast oder solche Effekte bemerkst, lass dir deine Variable mit var_dump() anzeigen. (Auch um Ergebnisse von Ausdrücken anzeigen zu lassen ist das hilfreich.)

    echo "$verabschiedung $name";

    1. Warum hast du da [] angehängt? Dies bewirkt, dass PHP sowas wie $var[] = wert; macht. Das heißt, es legt $var als Array an, falls es noch nicht da war, und fügt ein Element an.

      Weil sich diese If Schleife in einer For Schleife steht.
      In der If SChleife gehts eigentlich nur darum ob Werte da sind oder nicht.

      1. Weil sich diese If Schleife in einer For Schleife steht.
        In der If SChleife gehts eigentlich nur darum ob Werte da sind oder nicht.

        Es gibt keine If-Schleifen. ;)