我正在尝试为用户可以填写的表单编写html5和PHP。当他们点击提交时,我希望有一个整体评估类别,每5列分组,我也可以检索。例如:
<parameters>
<parameterID>9214</parameterID>
<parameter>MC Bands</parameter>
<Yevaluation/>
<Mevaluation/>
<Cevaluation/>
<Kevaluation/>
<comments/>
</parameters>
<parameters>
<parameterID>9245</parameterID>
<parameter>MC Streaks</parameter>
<Yevaluation/>
<Mevaluation/>
<Cevaluation/>
<Kevaluation/>
<comments/>
</parameters>
我无法将其放入表单和输入表中,以便稍后可以检索类别ID。我打算去一个隐藏的单元格,但它在第一个表格单元格中保留了这个值。
这是在table.php中:
<form method="get" action="visEupload.php">
<table id="bigTable" border="1">
<thead>
<tr>
<th id="bandY" class="col3">Bands @263mm Y</th>
<th id="bandM" class="col3">Bands @263mm M</th>
<th id="bandC" class="col3">Bands @263mm C</th>
<th id="bandK" class="col3">Bands @263mm K</th>
<th id="Comments" class="col3">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td><input name="MCBands" value="9214" id="MCBands" visibility=hidden> <!--this isn't showing up as hidden-->
<td><input name="Yevaluation" ></td> //Row 0 Column 1
<td><input name="Mevaluation" ></td> //Row 0 Column 2
<td><input name="Cevaluation" ></td> //Row 0 Column 3
<td><input name="Kevaluation" ></td> //Row 0 Column 4
<td><input name="comment" ></td> //Row 0 Column 4
<!--the above rows will repeat with different id's/names/values/cells, ex. streaks and will be really wide-->
</tr>
</tbody>
</table>
<input id="submit" type="submit" class="list" name="submit" value="Submit To Database" >
</form>
我很难找到一个用表格提交的表格数据的好例子。我看到了这个,但它是不同的html tables。
在我点击提交后,我正在visEupload.php中检索它,但是考虑到我每隔几行添加一个额外的参数ID,可能有更好的方法:
if (isset($_GET['submit'])){
$Yevaluation= $_GET['Yevaluation'];
$Mevaluation= $_GET['Mevaluation'];
$Cevaluation= $_GET['Cevaluation'];
$Kevaluation= $_GET['Kevaluation'];
$MCBands= $_GET['MCBands'];
$comment=$_GET['comment'];
echo "here:".$Yevaluation.$Mevaluation.$Cevaluation.$Kevaluation.$MCBands.$comment;
echo "here1";
echo ("visE upload requested");
} //submit is set
答案 0 :(得分:1)
您可以在输入元素中使用类似数组的名称,如:
<table id="bigTable" border="1">
<thead>
<tr>
<th id="bandY" class="col3">Bands @263mm Y</th>
<th id="bandM" class="col3">Bands @263mm M</th>
<th id="bandC" class="col3">Bands @263mm C</th>
<th id="bandK" class="col3">Bands @263mm K</th>
<th id="Comments" class="col3">Comments</th>
</tr>
</thead>
<tbody>
<tr>
<td><input name="MCBands[]" value="9214" id="MCBands" type="hidden">
<td><input name="Yevaluation[]" value=""></td> //Row 0 Column 1
<td><input name="Mevaluation[]" value=""></td> //Row 0 Column 2
<td><input name="Cevaluation[]" value=""></td> //Row 0 Column 3
<td><input name="Kevaluation[]" value=""></td> //Row 0 Column 4
<td><input name="comment[]" value=""></td> //Row 0 Column 4
</tr>
<tr>
<td><input name="MCBands[]" value="9215" id="MCBands" type="hidden">
<td><input name="Yevaluation[]" value=""></td> //Row 0 Column 1
<td><input name="Mevaluation[]" value=""></td> //Row 0 Column 2
<td><input name="Cevaluation[]" value=""></td> //Row 0 Column 3
<td><input name="Kevaluation[]" value=""></td> //Row 0 Column 4
<td><input name="comment[]" value=""></td> //Row 0 Column 4
</tr>
<tr>
<td><input name="MCBands[]" value="9214" id="MCBands" type="hidden">
<td><input name="Yevaluation[]" value=""></td> //Row 0 Column 1
<td><input name="Mevaluation[]" value=""></td> //Row 0 Column 2
<td><input name="Cevaluation[]" value=""></td> //Row 0 Column 3
<td><input name="Kevaluation[]" value=""></td> //Row 0 Column 4
<td><input name="comment[]" value=""></td> //Row 0 Column 4
</tr>
</tbody>
</table>
在后端,你可以使用:
if (isset($_GET['submit'])){
$arr = array();
foreach($_POST["MCBands"] as $key => $val) {
$arr[] = array(
"MCBands" => $_POST["MCBands"][$key],
"Yevaluation" => $_POST["Yevaluation"][$key],
"Mevaluation" => $_POST["Mevaluation"][$key],
"Cevaluation" => $_POST["Cevaluation"][$key],
"Kevaluation" => $_POST["Kevaluation"][$key],
"comment" => $_POST["comment"][$key]
); //semicolon added here ~M
}
}