PHP问卷系统如何做到防止用户有未填写的题目就提交问卷?
页面是这样的:代码是通过循环从数据表中循环出选项的:<inputtype="radio"name="<?phpecho'title['.$row2[topicID].']...
页面是这样的:
代码是通过循环从数据表中循环出选项的:
<input type="radio" name="<?php echo 'title['.$row2[topicID].']';?>" value="<?php echo $row3[optionID];?>" /><?php echo $row3[optionContent]?>
这样子写的话生成的网页源代码是这样的:
目前的问题是,即使用户一道题也没做,也可以提交数据到数据处理页面,我要如何做到防止用户没有回答就提交呢,是在问卷页面处理还是在提交到的那个数据出库页面处理呢??我不知道问卷系统中的选项ID是12,13,还是51,55,又怎么来限制呢???? 展开
代码是通过循环从数据表中循环出选项的:
<input type="radio" name="<?php echo 'title['.$row2[topicID].']';?>" value="<?php echo $row3[optionID];?>" /><?php echo $row3[optionContent]?>
这样子写的话生成的网页源代码是这样的:
目前的问题是,即使用户一道题也没做,也可以提交数据到数据处理页面,我要如何做到防止用户没有回答就提交呢,是在问卷页面处理还是在提交到的那个数据出库页面处理呢??我不知道问卷系统中的选项ID是12,13,还是51,55,又怎么来限制呢???? 展开
推荐于2016-10-04
展开全部
说实在的,这个判断有点复杂,你说的这个肯定先用js来判断,然后后台也必须再判断这次,以防止js被人破坏。后台判断就不写了,写个JS给你吧。
以下代码已经过测试。
<form action="" id="test" method="post">
<input type="radio" name="test[1]" value="1" /><br />
<input type="radio" name="test[1]" value="2" /><br />
<input type="radio" name="test[1]" value="3" /><br />
<br />
<input type="radio" name="test[2]" value="1" /><br />
<input type="radio" name="test[2]" value="2" /><br />
<input type="radio" name="test[2]" value="3" /><br />
<input type="button" onclick="tests()" value="sub" />
</form>
<script type="text/javascript">
function tests(){
var inp=document.getElementsByTagName('input')
var t=null
for(var i=0;i<inp.length;i++){
if(inp[i].type!='radio') continue;
if(inp[i].name==t) continue;
t=inp[i].name
var obj=document.getElementsByName(t)
var flag=false
for(var j=0;j<obj.length;j++){
if(obj[j].checked){
flag=true
break
}
}
if(!flag){
alert('请选择')
return false
}
}
document.getElementById("test").submit();
}
</script>
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询