[英]Catching POST data in php with variable ID
我正在從數據庫中創建一個表單,輸入的ID可能是1-9、1、2、5、8等。按照現在的方式,IE無法確定數字, 除非我要進行迭代從1到數據庫中菜單項的最終數量...從編碼的角度來看,我認為這並不是最佳選擇。
我有兩個文件。 File1將從數據庫中獲取菜單項的列表號並創建一個列表。 我的代碼的精簡版如下,請記住我已經精簡了很多無用的東西;
File1.php
$menuArray = openMenu(1);
$return = "<div id='menu'><form method='post' action='file2.php'><input type='submit' name='submit' value='Commit Order' /><table class='tableinfo'>";
$i=1;
foreach($menuArray as $recordNum => $record)
{
if ($record['available'] > 0)
{
$thisClass='available';
} else{
$thisClass='unavailable';
}
$return.="<tr class='$thisClass'>
<td>$record[itemid]</td>
<td><label for='$record[itemid]'>$record[name]</label></td>
<td><button type='button' id='itemid-$record[itemid]' class='subtract'>-</button><input class='itemadder' id='itemid-$record[itemid]' type='number' min='0' value='0' /><button id='itemid-$record[itemid]' class='addition' type='button'>+</button></td>
</tr>";
}
$return.="</table></form></div>";
return $return;
File2.php我不知道該如何編碼:(
有誰能夠闡明實現此目標的最佳方法? 我只需要一種方法即可查看發布時ID的值。
我目前正在使用jQuery; 這將是最好的事情,使用jQuery嗎?
呈現以上輸入的腳本File1.php
確實知道呈現了什么。 那么,如果它還將呈現的表單元素名稱列表放入會話中,以供以后在file2.php
使用:
在一開始的時候:
$_SESSION['formids'] = array();
在循環:
....
$_SESSION['formids'][] = "itemid-" . $record[itemid];
並在file2.php
:
$sendItems = $_SESSION['formids'];
...
foreach ( $sendItems as $itemId )
{
$val = empty($_POST[$itemId]) ? null : $_POST[$itemId];
if ( isset($val) )
...
假設我正確地理解了您,執行此操作的最佳方法是輸入一組數組。
您應該嘗試為HTML輸出實現的代碼將需要如下所示:
<input type="text" name="number[1]" value="" />
<input type="text" name="number[3]" value="" />
<input type="text" name="number[5]" value="" />
現在您知道用PHP提交表單之后:
foreach($_POST['number'] as $id => $value){
echo 'The value for ID #' . $id . ' is ' . $value;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.