我对php和mysql完全是个新手,所以我希望你们能帮助我。我有一个表单,其中有一个按钮,用户可以在其中动态添加一组输入字段。我使用append来生成字段。我正在读一篇关于它的教程,所以我理解了这一部分。我的问题是,如果我有一组字段,而不是像该网站显示的那样只有一个输入字段,我该如何构造,link here.查询的foreach循环?下面是我的append的样子(我只显示了4个字段,但总共有16个字段)。我想将帖子数据上传到sql数据库。我一直在搜索这个站点,但我只看到了一个输入字段的foreach循环示例,而不是我所拥有的set。
非常感谢,我希望有人能给我一个如何继续这一点的想法。
<script type="text/javascript">
var count = 0;
$(function(){
$('p#add_field').click(function(){
count += 1;
$('#row-fluid').append(
'<div class="span12" style="border-bottom:1px lightgray solid; padding:10px 0px;">'
+'<div class="row-fluid"> '
+'<div class="span1">'
+'<label> </label>'
+'<label class="radio"><input type="radio" id="process_where' + count + '" name="process_where[]' + '" value="Online" onClick="checkProcessType(this.value)" >Online</label>'
+'<label class="radio"><input type="radio" id="process_where' + count + '" name="process_where[]' + '" value="In-store" onClick="checkProcessType(this.value)" >In-store</label>' +'</div>'
+'<div class="span1">'
+'<label> </label>'
+'<label class="radio"><input type="radio" id="status' + count + '" name="status[]' + '" value="Actual" onClick="checkStatus(this.value)" >Actual</label> '
+'<label class="radio"><input type="radio" id="status' + count + '" name="status[]' + '" value="Ghost" onClick="checkStatus(this.value)" >Ghost</label>'
+'</div>'
+'<div class="span1">'
+'<label>Type</label>'
+'<select id="upg' + count + '" name="upg[]' + '" onChange="checkExp(this.value)" class="input-small" >'
+' <option value="" selected=" " > </option>'
+'<option value="Exp" >Exp</option>'
+'<option value="Post" >Post</option>'
+'<option value="Upgrade" >Upg</option>'
+'<option value="Retail" >Retail</option>'
+'</select>'
+'</div>'
+'<div id="upg' + count + '" class="span2">'
+'<label>Full Date</label>'
+'<input name="upg_date[]' + '" id="upg_date' + count + '" type="text" id="upg_date" placeholder="YYYY-MM-DD" class="input-small" />'
+'<img id="jscalendar' + count + '" type="image" src="img/calendar.png" style="border-width:0px; width:16px; height:16px; background-color:#FFF; margin-bottom:-7px;" onclick="createPopCalendar3()">'
+'</div>'发布于 2012-11-02 16:16:41
修改你的提交页面,如下所示:
if(is_array($_POST[counter]))
{
$count=count($_POST[counter]);
for($i=0;$i<=$count;$i++)
{
$process_where=$_POST["process_where".$i.""];
$status=$_POST["status".$i.""];
$upg=$_POST["upg".$i.""];
$upg_date=$_POST["upg_date".i.""];
if($process_where !="")
{
//Query Run Here
$query="insert into tablename (process_where,status,upg,upg_date) values ('".$process_where."','".$status."','".$upg."','".$upg_date."')";
mysql_query($query) or die(mysql_error());
}
}
}发布于 2012-11-01 19:28:31
你可以像this.On表单提交一样检查下面的代码:
if(is_array($_POST[process_where]))
{
foreach($_POST[process_where] as $key=>$val)
{
$process_where=$_POST[process_where][$key];
$status=$_POST[status][$key];
$upg=$_POST[upg][$key];
$upg_date=$_POST[upg_date][$key];
//Query Run Here
$query="insert into tablename (process_where,status,upg,upg_date) values ('".$process_where."','".$status."','".$upg."','".$upg_date."')";
mysql_query($query) or die(mysql_error());
}
}发布于 2012-11-02 14:36:15
将您的javascript更改为:
<script type="text/javascript">
var count = 0;
$(function(){
$('p#add_field').click(function(){
count += 1;
$('#row-fluid').append(
'<div class="span12" style="border-bottom:1px lightgray solid; padding:10px 0px;">'
+'<div class="row-fluid"> '
+'<div class="span1">'
+'<label> </label>'
+'<label class="radio"><input type="radio" id="process_where' + count + '" name="process_where' + count +'" value="Online" onClick="checkProcessType(this.value)" >Online</label>'
+'<label class="radio"><input type="radio" id="process_where' + count + '" name="process_where' + count +'" value="In-store" onClick="checkProcessType(this.value)" >In-store</label>' +'</div>'
+'<div class="span1">'
+'<label> </label>'
+'<label class="radio"><input type="radio" id="status' + count + '" name="status' + count +'" value="Actual" onClick="checkStatus(this.value)" >Actual</label> '
+'<label class="radio"><input type="radio" id="status' + count + '" name="status' + count +'" value="Ghost" onClick="checkStatus(this.value)" >Ghost</label>'
+'</div>'
+'<div class="span1">'
+'<label>Type</label>'
+'<select id="upg' + count + '" name="upg' + count +'" onChange="checkExp(this.value)" class="input-small" >'
+' <option value="" selected=" " > </option>'
+'<option value="Exp" >Exp</option>'
+'<option value="Post" >Post</option>'
+'<option value="Upgrade" >Upg</option>'
+'<option value="Retail" >Retail</option>'
+'</select>'
+'</div>'
+'<div id="upg' + count + '" class="span2">'
+'<label>Full Date</label>'
+'<input name="upg_date' + count +'" id="upg_date' + count + '" type="text" id="upg_date" placeholder="YYYY-MM-DD" class="input-small" />'
+'<img id="jscalendar' + count + '" type="image" src="img/calendar.png" style="border-width:0px; width:16px; height:16px; background-color:#FFF; margin-bottom:-7px;" onclick="createPopCalendar3()">'
+'<input type="hidden" name="counter[]" value="1"></div>'修改你的提交页面,如下所示:
if(is_array($_POST[counter]))
{
foreach($_POST[counter] as $key=>$val)
{
$process_where=$_POST["process_where".$key.""];
$status=$_POST["status".$key.""];
$upg=$_POST["upg".$key.""];
$upg_date=$_POST["upg_date".$key.""];
if($process_where !="")
{
//Query Run Here
$query="insert into tablename (process_where,status,upg,upg_date) values ('".$process_where."','".$status."','".$upg."','".$upg_date."')";
mysql_query($query) or die(mysql_error());
}
}
}https://stackoverflow.com/questions/13171107
复制相似问题