<html>
<head>
<title>NullUserException's Form</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript">
function addRow() {
var row = '<tr> <td><input type="text" name="name[]"></td> <td><input type="text" name="start[]"></td <td><input type="text" name="end[]"></td> <td><input type="text" name="wage[]"></td> </tr>';
$(row).insertBefore("#last");
}
</script>
<form method="post">
<table id="thetable">
<tr>
<th>Name</th><th>Start</th><th>End</th><th>Wage</th>
</tr>
<tr>
<td><input type="text" name="name[]"></td>
<td><input type="text" name="start[]"></td>
<td><input type="text" name="end[]"></td>
<td><input type="text" name="wage[]"></td
</tr>
<tr id="last">
<td colspan="4" style="text-align: center">
<input type="submit">
<input type="button" value="Add Row" onclick="addRow();">
</td>
</tr>
</table>
</form>
<pre>
<?php
if (empty($_POST))
die();
$db = array();
for ($k=0; $k<count($_POST['name']); $k++) {
$db[$k] = array(
'name' => $_POST['name'][$k],
'start' => $_POST['start'][$k],
'end' => $_POST['end'][$k],
'wage' => $_POST['wage'][$k]
);
}
echo "How it looks like after processing:\n";
print_r($db);
echo "\nYou can store them as:\n";
foreach ($db as $entry) {
echo implode(',', $entry) . "\n";
}
echo "\nA more useful form is having the name as the key\n";
$newdb = array();
foreach ($db as $entry) {
$name = $entry['name'];
unset($entry['name']);
$newdb[$name] = $entry;
}
print_r($newdb);
echo "\nThen just serialize(\$newdb) and store that\n";
?>
</pre>
</body>
</html>