sukanya.paul Posted January 29, 2009 Share Posted January 29, 2009 hi, i have a form with n number of dynamically generated input fields.all of them have unique ids. but my problem is since the fields are being generated dynamically i don't know the names or ids. on submitting the form i need to display the value of each field. how can i do this?this is very very urgent. any help will be highly appreciated. my working code which is generating the unique fields: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Untitled Document</title> </head> <body> <script type="text/javascript"> var addInput_count = 0; var addSec_count = 0; function addInput() { var c = addInput_count++; var parent = document.getElementById('myform') var objBr = document.createElement('br'); var objNew = document.createElement('div'); objNew.setAttribute('name', 'mod_div_' + c); objNew.setAttribute('id', 'mod_div_' + c); var mod_id = 'mod_div_' + c ; var objInputx = document.createElement('input'); objInputx.setAttribute('type', 'hidden'); objInputx.setAttribute('name', 'module_id') objInputx.setAttribute('id', 'module_id'); objInputx.setAttribute('value', mod_id); var objInput1 = document.createElement('input'); objInput1.setAttribute('type', 'text'); objInput1.setAttribute('name', 'module_' + c); objInput1.setAttribute('value', 'module_' + c); /*var objA = document.createElement('a'); objA.setAttribute('href', 'javascript: onclick=addInput();'); objA.appendChild(document.createTextNode('add another module'));*/ var objB = document.createElement('button'); objB.setAttribute('type', 'button'); objB.setAttribute('name', 'addSec'); objB.setAttribute('value', c); objB.setAttribute('onclick', 'javascript:addSec(this.value);'); objB.appendChild(document.createTextNode('add section')); objNew.appendChild(document.createTextNode('Add Module:')); objNew.appendChild(objInput1); objNew.appendChild(objB); objNew.appendChild(document.createElement('br')); objNew.appendChild(objInputx); objNew.appendChild(document.createElement('br')); parent.appendChild(objNew); } function addSec(c) { //alert(c); var count=0; var s = addSec_count++; var parent1 = document.getElementById('mod_div_' + c) var objNewsec = document.createElement('div'); objNewsec.setAttribute('name', 'sec_div_' + c+'_'+s); objNewsec.setAttribute('id', 'sec_div_' + c+'_'+s); var objInput1 = document.createElement('input'); objInput1.setAttribute('type', 'hidden'); objInput1.setAttribute('name', 'sec_id' ); objInput1.setAttribute('value', 'id' ); var objC = document.createElement('button'); objC.setAttribute('type', 'button'); objC.setAttribute('name', 'addSec'); objC.setAttribute('value', s); objC.setAttribute('onclick', 'javascript:addSubSec(this.value);'); objC.appendChild(document.createTextNode('add sub section')); objNewsec.appendChild(document.createTextNode('Add Section:')); var objInput2 = document.createElement('input'); objInput2.setAttribute('type', 'text'); objInput2.setAttribute('name', 'sec_div_'+c +'_'+s); objInput2.setAttribute('value','sec_div_'+c +'_'+s); objInput2.setAttribute('style','margin-left:25px;'); objNewsec.appendChild(objInput1); objNewsec.appendChild(objInput2); objNewsec.appendChild(document.createTextNode('sec_div_'+ c +'_'+s)); /*objNewsec.appendChild(document.createElement('br')); objNewsec.appendChild(objInputx);*/ objNewsec.appendChild(document.createElement('br')); parent1.appendChild(objNewsec); } /*function addSubSec(c) { alert(c); var id=""; var s = addSubSec_count++; var parent1 = document.getElementById('sec_div_' + c+'_'+s) var objNewsec = document.createElement('div'); objNewsec.setAttribute('name', 'sub_sec_div_' + c+'_'+s); objNewsec.setAttribute('id', 'sub_sec_div_' + c+'_'+s); var objInput1 = document.createElement('input'); objInput1.setAttribute('type', 'hidden'); objInput1.setAttribute('name', 'sub_sec_id' ); objInput1.setAttribute('value', 'id' ); objNewsec.appendChild(document.createTextNode('Add Sub Section:')); var objInput2 = document.createElement('input'); objInput2.setAttribute('type', 'text'); objInput2.setAttribute('name', 'sub_sec_div_'+c +'_'+s); objInput2.setAttribute('value','sub_sec_div_'+c +'_'+s); objInput2.setAttribute('style','margin-left:25px;'); objNewsec.appendChild(objInput1); objNewsec.appendChild(objInput2); objNewsec.appendChild(document.createTextNode('sub_sec_div_'+c +'_'+s)); parent1.appendChild(objNewsec); } */ </script> <form action="form_dyn.php" method="post" name="form1"> <div style="border:thin solid #000000; overflow:scroll; width:800px; height:300px;"> <input name="moreMods" type="button" id="moreMods" onclick="addInput();" value="Add another Module" /> <div id="myform"></div> </div> <input type="submit" name="submit" value="submit" /> </form> </body> </html> thanks in advance. Suk Link to comment https://forums.phpfreaks.com/topic/142963-help-with-_post/ Share on other sites More sharing options...
gevans Posted January 29, 2009 Share Posted January 29, 2009 To just print all the values; <?php foreach($_POST as $value){ echo $value."<br />\n"; } If you want to know the assigned names used as the key do this; <?php foreach($_POST as $key => $value){ echo "$key: $value<br />\n"; } Link to comment https://forums.phpfreaks.com/topic/142963-help-with-_post/#findComment-749579 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.