我遇到了复选框数组
的问题这是我的代码
<?php
include('config.php');
if(isset($_POST['submit']))
{
for($x = 0;$x <= 5;$x++)
{
if(isset($_POST['check'][$x]))
{
echo "THERE IS A VALUE<br>";
}
else{
echo "EMPTY<br>";
}
}
}
?>
<html>
<head>
<script type="text/javascript" src="js/jquery.min.js"></script>
<script>
$(document).ready(function(){
$("#add-file-field").click(function(){
$("#text").append("<div class='added-field'><input type='checkbox' name='check[]' />Never Expired</div>");
});
});
</script>
</head>
<body>
<form enctype="multipart/form-data" action="" method="POST">
<div id="text">
<input type="checkbox" name="check[]" />Never Expired<br>
</div>
<input type="button" id="add-file-field" name="add" value="Add input field" />
<input type="submit" value="Upload File" name="submit" id="submit" />
</form>
</body>
</html>
在这里我举例说明我创建了5个复选框
Checkbox1
Checkbox2
Checkbox3
Checkbox4
Checkbox5
当我查看Checkbox3时
输出结果为
THERE IS A VALUE
EMPTY
EMPTY
EMPTY
EMPTY
我希望结果是这样的
EMPTY
EMPTY
THERE IS A VALUE
EMPTY
EMPTY
怎么做到那样?请帮帮我
答案 0 :(得分:1)
您需要将键添加到数组
<input type="checkbox" name="check[0]" />
和
var num = 1;
$("#add-file-field").click(function(){
$("#text").append("<div class='added-field'><input type='checkbox' name='check["+num+"]' />Never Expired</div>");
num++;
});
答案 1 :(得分:0)
未检查的复选框不会被浏览器发送到服务器,因此不在$_POST['check']
数组中。这就是THERE IS A VALUE
始终排在第一位的原因。
答案 2 :(得分:0)
您可以在将来看到此指南...
http://www.html-form-guide.com/php-form/php-form-checkbox.html
您的问题是,您只需检查是否已设置。你必须检查他们的价值..
修复你的html表单
<input type="checkbox" name="check" value="1"> checkbox1</input>
"----do the same---------------------------"2""---------2------->"//do this until you get your five checkbox
然后在php上
<?php
include('config.php');
if(isset($_POST['submit']))
{
for($x = 0;$x <= 5;$x++)
{
if($_POST['check']==strval($x))
{
echo "THERE IS A VALUE<br>";
}
else{
echo "EMPTY<br>";
}
}
}
?>
希望它有效
PS。如果有人看到错误,请编辑它。
答案 3 :(得分:0)
希望这是有效的 添加
<input type="checkbox" name="check[0]" />
然后 编辑本
var x = 1;
$("#add-file-field").click(function(){
$("#text").append("<div class='added-field'><input type='checkbox' name='check["+x+"]' />Never Expired</div>");
x++;
});
然后简单的PHP代码
if(isset($_POST['submit']))
{
// $x = cout($_POST['check']);
for($x = 0;$x <= 5;$x++)
{
if(strlen($_POST['check'][$x])>1)
{
echo "THERE IS A VALUE<br>";
}
else{
echo "EMPTY<br>";
}
}
}
感谢