$POST und Variablen

MatMagic

Erfahrenes Mitglied
Hallo Community,
ich möchte die Post Variable von Submitbuttons abfragen.

Code:
<?php
for ($i = 1; $i < $aa; $i ++) {
?>
    <tr>
      <td width="3%"><?php echo $ID[$i]; ?> </td>
      <td width="12%"><?php echo $name[$i]; ?> </td>
      <td width="13%"><?php echo $email[$i]; ?> </td>
      <td width="14%"><?php echo $adresse[$i]; ?> </td>
      <td width="14%"><?php echo $plz[$i]; ?> </td>
	  <td width="14%"><input type="submit" name="<?php echo "test".$i; ?> " value="Save">
      <?php echo $algebra[$i]; ?></td>
      <td width="20%"></td>
    </tr>
<?php
}

$e = "1";
if ( isset($_POST['test'.$e]) )
{ echo "OK"; }
}
?>
  </table>

$name, $email, etc. hole ich aus einer Datenbank
$aa sind die Anzahl der Einträge aus der Datenbank
$e habe ich zum testen der abfrage eingesetzt - (wird wenn es denn erstmal funktioniert in einer Schleife abgefragt)

In jeder Tabellenzeile wird ein Submit-Button eingefügt der jeweils den Namen "test" + aktueller Wert von $i erhält (test1, test2, etc...anzahl je nach wertigkeit von $aa) - Das funktioniert auch Einwandfrei.

Aber wie frage ich jeden einzelnen Button ab ? Ich wollte es so machen:

$e = "1";
if ( isset($_POST['test'.$e]) )
{ echo "OK"; }
}
?>

Wenn ich nun auf den Submit Button "test1" klicke sollte "OK" ausgegeben werden....da passiert aber nix.

Und der Fehler liegt glaube ich hier:
if ( isset($_POST['test'.$e]) )

Wer kann mir die korrekte Syntax sagen.... !? :confused:
 
Ich sehe in deinem Skript nirgendwo ein <form>-Tag. Hast du das nur nicht mit gepostet oder fehlt das schlichtweg?
In erstem Fall, mach doch einfach mal var_dump($_POST), dann siehst du doch, was unter welchem Namen von dem Formular übergeben wird...

Gruß
 
Habe ich nur nicht mitgepostet...

array(1) { ["test1_"]=> string(4) "Save" }

wird ausgegeben (bei klick auf den ersten button)
was mich nun wundert ist der unterstrich hinter "test1"....aber auch mit dem
Unterstrich in meiner IF Abfrage geht es nicht.

if ( isset($_POST['test'.$e."_"]) )

EDIT***** Es funktioniert jetzt !! :-)

if ( isset($_POST['test'.$i."_"])) {
echo "OK";
}

Vielen Dank für den Denkanstoss mit var_dump - wäre sonst nie drauf gekommen das da noch ein "_" hinten an der Variable hängt.
 
Zuletzt bearbeitet:
Zurück