
[英]Unsure how to get $_POST[''] value from form when the name is dynamic?
[英]How To Get Value and Set Name From Dynamic Form
也許標題弄糊塗了。 但是我有這樣的情況
我有一個包含一些輸入文本(文本框)的表單。 但是此輸入取決於我的數據庫。
<label class="strong"><?php echo $rowexp['mexpense_name']; ?></label>
<input type="text" class="span4" placeholder="Expense <?php echo $rowexp['mexpense_name']; ?>" name="" />
這是該輸入文本的數據庫:
tbl_mexpensive -> mexpensive_id, mexpensive_name
tbl_expensive -> expensive id, expensive_year
tbl_texpensive -> mexpensive_id, expensive_id
因此,文本字段的數量將與tbl_mexpensive處的數據相同,並且POST頁面將設置為tbl_texpensive。
例如,如果mexpensive獲得3值,則: [textbox1] [textbox2] [textbox3] If i click submit It return to POST page and get the value each of the textbox BUT the query is like this: insert into texpensive (exp_id, mexp_id) VALUE (exp_id, XXX)
從上面開始,我的問題是,如何在POST頁面(XXX)中獲取值? 我的意思是,我應該給該輸入文字起什么名字? 我嘗試了一個數組,但是無法正常工作。 我嘗試將其名稱指定為表值,但仍然沒有結果,因為它是一個動態文本框。
對不起,我的英語不好。
- 編輯
我的帖子
$asal = $_POST['asal']; $unit = $_POST['unit']; $tahun = $_POST['tahun']; $querydata = mysql_query("SELECT * FROM m_mainexpense WHERE mexpense_status=1"); $last = mysql_query("SELECT * FROM t_expense"); $getlast = mysql_fetch_array($last); $nom = (int)$getlast['expense_id'] + 1; while($rowdata = mysql_fetch_array($querydata)) { if(isset($_POST[mexpense_name])) { //actually don't know what to do in here $arr = $_POST[mexpense_name]; $query = "INSERT INTO t_expense (texp_mext, texp_exp) VALUES ('$arr','$nom')"; } } $query = "INSERT INTO m_expense(expense_unit, expense_school, expense_year, expense_type, expense_status) VALUES ('$unit', '$asal', '$tahun', 1)"; if(mysql_query($query)) { echo "<script> alert('Penambahan Data Sukses'); window.location.href='return_index.php'; </script>"; echo '<noscript> Please Enable Your JavaScript. <a href="welcome.php">Main Menu</a> </noscript>'; die(); }
使用key($ array)並通過foreach函數獲取值。 並將其返回數據庫。 終於解決了...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.