2012-08-29 62 views
0

我有一個HTML表單,我追加了幾個元素,如用戶從列表jquery中選擇多個國家運行所選列表併爲每個國家創建一組表單域。存儲jquery附加值

假設用戶選擇了美國,中國和印度,然後形成域會爲每個這樣的國家給予ID ASN名稱爲* countryName_indexValue,customeName_countryName_indexValue的創建*

我的問題: 我需要提交此當用戶填寫並點擊提交按鈕時,通過php向mysql數據庫添加元素值。我該怎麼做?請幫幫我......

,結果是這個

<form> 

<table> 
<thead> 
<tr> 
<td>Country Name</td> 
<td>Data01</td> 
<td>Data02</td> 
</tr> 
</thead> 

<!-- APPENDED ELEMENTS --> 

<tbody> 
<tr id="usa_0"> 
<td><input type="text" name="userCountry_usa_0" id="userCountry_usa_0"></td> 
<td><input type="text" name="countryData01_usa_0" id="countryData01_usa_0"></td> 
<td><input type="text" name="countryData02_usa_0" id="countryData02_usa_0"></td> 
</tr> 

<tr id="china_1"> 
<td><input type="text" name="userCountry_china_1" id="userCountry_china_1"></td> 
<td><input type="text" name="countryData01_china_1" id="countryData01_china_1"></td> 
<td><input type="text" name="countryData02_china_1" id="countryData02_china_1"></td> 
</tr> 

<tr id="india_2"> 
<td><input type="text" name="userCountry_india_2" id="userCountry_india_2"></td> 
<td><input type="text" name="countryData01_india_2" id="countryData01_india_2"></td> 
<td><input type="text" name="countryData02_india_2" id="countryData02_india_2"></td> 
</tr> 
</tbody> 

</table> 

</form> 

謝謝。

+0

我可以看到代碼你有什麼嘗試,以便我們可以修改它,如果possile? –

回答

1

那麼,有什麼問題?您在提交數據時是否遇到問題?或者你正在努力處理PHP端的$ _​​POST?

如果它正在處理$ _POST,我建議將生成的表單域更改爲userCountry[countryName][indexValue]而不是userCountry_countryName_indexValue

這樣,當提交表單時,$ _POST將由數組組成,然後您可以循環寫入數據庫,例如,在$ _ POST會碰到這樣的:

$_POST['userCountry'] = array('usa' => array('0' => 'someValue'), 
           'china' => array('1' => 'someOtherValue'), 
           'india' => array('2' => 'yetAnotherValue'), 
         ) 

然後你可以遍歷這一點,如:

foreach($_POST['userCountry'] as $country=>$subArray) { 
    //code here to insert data 
} 

您當前的實現可能與循環工作爲好,只要你遍歷整個$ _POST對象,檢查每個鍵,並尋找特定的子字符串,在下劃線上爆炸,然後處理,但它會有點難看。

+0

感謝您的回覆.. 問題是,如果我有一個自定義字段與唯一的ID /名稱,例如名稱=「fieldName」,那麼我可以有一個$ varName = $ _POST ['fieldName'];在我的PHP頁面中,我將這個變量發送到mysql查詢,以便它可以將值存儲在數據庫中。 但是,我在這裏爲每個選定的國家生成一組新的字段。所以如果用戶選擇50個國家,每個字段都會有一個id和像我上面列出的名稱。在這種情況下,我如何處理各個國家的字段,比如我需要將每個國家及其數據作爲新記錄輸入到mysql表中。 – sravis

+0

@sravis - 我已經更新了我的答案,更詳細地說明如何更改生成的表單元素的ID將允許您循環表單數據以將其插入到數據庫中。 – ernie

+0

感謝您的幫助,現在我可以遍歷每個字段並將其存儲在數據庫中。我發現這對我的問題http:// stackoverflow非常有用。com/questions/12040425/jquery-loop-through-table-and-get-element – sravis

-1

表單提交事件或元素單擊您可以將輸入值與jQuery的.post()或.get()函數發送到一個php文件。

下面是關於如何使用。員額(一些基本的和更復雜的exaples): http://api.jquery.com/jQuery.post/

強烈建議PHP文件包含了數據驗證,之後您可以發出與SQL INSERT從那裏的PHP。

+0

問題不在於如何通過表單提交數據。 。 。 – ernie