0
嘗試使用動態表單字段名稱。我可以讓他們在頁面上,但我不能引用他們插入或從表中選擇。我之前完成了這個工作,用數字動態地命名錶單域,然後循環遍歷它們以將數據插入表中,但這些項目將插入到不同的表中,因此我想通過名稱引用它們,並嘗試了幾個選項,到目前爲止,我嘗試了所有我嘗試過的錯誤。 我在表單上有4到6個字段,每個部分都有一個Add按鈕。我想單擊添加按鈕並將字段插入到特定的表中,然後在每個部分下方都有一張表格,然後顯示剛剛添加的數據。我無法引用動態變量
<cfif structKeyExists(form,"Add")>
<cfquery name = "getTableColumnHeadings">
SELECT * FROM '#enclTable#' <<< errors here >>> enclTable is undefined
</cfquery>
<center><cfdump var = "#enclTable#"></center> <<< and here >>> enclTable is undefined
</cfif>
表單字段(循環從查詢中添加字段的ID,姓名和MAXLEN和按鈕的id)...
<cfloop query ="getFormHeadings">
<cfloop query = "getFormFields">
<input type="input" class="form-control" id="#inpID#" name="#inpName#" maxlength="#inpLen#">
</cfloop>
<button class="btn btn-blue btn-block" type="submit" name="Add" id="#enclTable#">
</cfloop>
按鈕是另一回路通過另一個查詢
我想這在一個循環,並增加了x
<cfset variables["encl#x#"] = "#enclTable#">
但是當我把它放在
<cfif structKeyExists(form,"Add")>
我得到的是未定義X
#variables["enclTable" & x]#
也不能工作的錯誤。我不確定我做錯了什麼。我可以創建動態變量,但是我無法用它做任何事情之後引用它。對不起,如果這是很多解釋,我想徹底詳細瞭解所有細節。
您在數組符號的正確軌道上。但是你想要表單範圍,而不是變量範圍。 –
* enclTable未定義*代碼中的哪個位置定義了名爲* enclTablexxxx *的表單字段或變量?我沒有在上面的代碼中看到它,所以這個錯誤信息並不奇怪。 'name =「#inpName#」'的實際值是多少?另外,在查詢中使用客戶端提供的值會使數據庫處於SQL注入風險中。 – Leigh
@leigh,enclTable來自查詢getFormHeadings。 inpName來自查詢getFormFields。 enclTable是表的名稱,inpName是該表中字段的名稱。我試圖尊崇enclotable中用來插入記錄的東西。變量inpName保存字段的名稱,而enclTable保存表的名稱。我無法引用它們在索引它們之後獲取值。我有另外一個想法,我將與Dan Bracuk的想法一起嘗試。任何其他建議,將不勝感激。謝謝! – malibu65k