Thomas Schmieder: Array im Formular abrufen

Beitrag lesen

Hallo,

ich weiß nicht genau, ob Du das gesucht hast:

<head>
<?
  define("N","<br />");

$feld=$HTTP_GET_VARS;

function feldname($A)
  {
    list($key, $value) = each($A);
    return $key;
  }
?>

</head>
<body>

<?
  reset($feld);
  echo feldname($feld).N;
?>

<form action="<? echo $HTTP_SERVER_VARS[PHP_SELF] ?>" method="post">
  <input type="Text" name="<?= key($feld); ?>" size="10" maxlength="10"> <? next($feld); ?>
  <input type="Text" name="<?= key($feld); ?>" size="10" maxlength="10"> <? next($feld); ?>
  <input type="Text" name="<?= key($feld); ?>" size="10" maxlength="10">
  <input type="submit">
</form>

</body>
</html>

und das kommt dabei heraus:

<html>
<head>

</head>
<body>

name<br />

<form action="/~thomas/test/arr01.php" method="post">
  <input type="Text" name="name" size="10" maxlength="10">
  <input type="Text" name="strasse" size="10" maxlength="10">   <input type="Text" name="ort" size="10" maxlength="10">
  <input type="submit">
</form>

</body>
</html>

Liebe Grüße aus <http//www.braunschweig.de>

Tom

hi

ich habe in einem formular ein array, zum beispiel in folgender form:

<form action="<? echo $_SERVER['PHP_SELF'] ?>" method="post">
<input type="Text" name="feld[]" size="10" maxlength="10">
<input type="Text" name="feld[]" size="10" maxlength="10">
<input type="Text" name="feld[]" size="10" maxlength="10">
</form>

so weit so gut. ich habe nun ein problem, die eingaben wieder in php abzurufen. normalerweise benutze ich dazu den ausdruck $_Post["variablenname"], um den wert auszulesen. das geht nun aber bei dem array nicht. wer weiss antwort ?

andere variablen, zumindest aber keine arrays verwenden. du kannst ja mit einer schleife pro input-Feld immer einen "pseudo-index" höher gehen zum beispiel, so kannst du sie dann über den jeweiligen "pseudo-index" abrufen.

<form action="<? echo $_SERVER['PHP_SELF'] ?>" method="post">
<input name="index_0" size="10" maxlength="10">
<input name="index_1" size="10" maxlength="10">
<input name="index_2" size="10" maxlength="10">
</form>

<?php
$input_0 = $_POST['input_0'];
usw.

Fabian