views:

113

answers:

3

Hi,

Let's imagine I got this:

index.php generates form with unpredictable number of inputs with certain IDs/Names and different values that can be edited by user and saved by script.php

<form action="script.php" method="post">
<input id="1" name="1" type="text" value="1"/>
<input id="24" name="24" type="text" value="2233"/>
<input id="55" name="55" type="text" value="231321"/>
</form>

Script.php:

Here I need to get something like array of all inputs that were generated by index.php and save every value that corresponds to its id/name.

Is there a way to do this?

+2  A: 

i may be missing something in your question, but the $_POST variable will contain all the name => value pairs you're asking for. for example, in your above HTML snippet:

print_r($_POST);

// contains:

array
(
  [1] => 1
  [24] => 2233
  [55] => 231321
)

// example access:

foreach($_POST as $name => $value) {
  print "Name: {$name} Value: {$value} <br />";
}
Owen
A: 

It sounds like you're using a class or framework to generate your forms, you need to read the documentation for the framework to see if/where it's collecting this data.

TravisO
This is not the case.
Skuta
+1  A: 

Use an array_keys on the $_POST variable in script.php to pull out the names you created and use those to get the values.

$keys = array_keys( $_POST );
foreach( $keys as $key ) {
  echo "Name=" . $key . " Value=" . $_POST[$key];
}
Rob Prouse