PHP页面间的传值问题,复选框及表单等 200

效果如图,从数据库test表中循环读取人名,然后用户选择日期,提交后数据存入新的表test1中,test1结构:username,year,month,date,如何把1... 效果如图,从数据库test表中循环读取人名,然后用户选择日期,提交后数据存入新的表test1中,test1结构:username,year,month,date,如何把1.php中用户的选择结果存入test1中呢?1.php代码如下:
<?php
//数据库连接不写了
$query="SELECT * from test order by id";
$result=mysql_query($query);
?>
<html>
<head>
<body>
<form name="form1" method="post" action="1.php">
<table width="79%" border="1" align="center" bgcolor="#00FFFF">
<tr>
<td width="9%"><div align="center">姓名</div></td>
<td width="8%"> </td>
<td width="83%" colspan="31"> <div align="center">
<select name="year">
<option value="2011">2011
<option selected value="2012">2012
<option value="2013">2013
</select>年
<select name="month">
<option selected value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="5">5
<option value="6">6
<option value="7">7
<option value="8">8
<option value="9">9
<option value="10">10
<option value="11">11
<option value="12">12
</select>月</div></td>
</tr>
<tr>
<td> </td>
<td><div align="center">日期</div></td>
<td>1</td><td>2</td><td>3</td><td>4</td><td>5</td><td>6</td><td>7</td><td>8</td><td>9</td><td>10</td><td>11</td><td>12</td><td>13</td><td>14</td><td>15</td><td>16</td><td>17</td><td>18</td><td>19</td><td>20</td><td>21</td><td>22</td><td>23</td><td>24</td><td>25</td><td>26</td><td>27</td><td>28</td><td>29</td><td>30</td><td>31</td>
</tr><tr>
<?php
while ($row=@mysql_fetch_array($result)){
?>
<td><? echo $row['ChineseName'] ?> </td>
<td> </td>
<td><input type="checkbox" name="checkbox" value="1"></td>
<td><input type="checkbox" name="checkbox2" value="2"></td>
。。。。
字数有限,中间3-30不写了
。。。。
<td><input type="checkbox" name="checkbox31" value="31"></td>
</tr>
<?php }?>
</table>
<p align="center">
<input type="reset" name="Submit" value="重置">
<input type="submit" name="Submit2" value="提交">
</p>
</form>
</body>
</head>
</html>
本人是新手,麻烦回答的给下代码,多谢了!!一定要注意,显示在图片中的人名是从test表中循环读取出来的所有人名,或者如果test1表的格式不合适,可以进行修改的,增加新表也可以的 关键的问题是复选框的命名问题,从test表中读取的人名,每个人后面跟了checkbox1到checkbox31,这些人的checkbox名字都是重复的,所以另一个网页没有办法区分checkbox的值 难道就没有人会吗?
展开
 我来答
捷映短视频制作平台
2012-01-17 · 超过11用户采纳过TA的回答
知道答主
回答量:152
采纳率:50%
帮助的人:19.2万
展开全部
<?php
/*
* 以下是1.php的文件内容
* 我将你不想写的过程也省略了,改为JavaScript循环出来,不会有任何影响
* 你只需要复制我的代码新建1.php即可测试
*/
?>
<html>
<head>
<body>
<form name="form1" method="post" action="">
<table width="79%" border="1" align="center" bgcolor="#00FFFF">
<tr>
<td width="9%"><div align="center">姓名</div></td>
<td width="8%"> </td>
<td width="83%" colspan="31"> <div align="center">
<select name="year">
<option value="2011">2011
<option selected value="2012">2012
<option value="2013">2013
</select>年
<select name="month">
<script>
for(i=1;i<=12;i++){
document.write("<option value=" + i + ">" + i + "</option>");
}
</script>
</select>月</div></td>
</tr>
<tr>
<td> </td>
<td><div align="center">日期</div></td>
<script>
for(i=1;i<=31;i++){
document.write("<td>" + i + "</td>");
}
</script>
</tr><tr>
<?php
//while ($row=@mysql_fetch_array($result)){
$arrName = array("张三", "李四", "王五");
foreach ($arrName as $key => $name) {
?>
<td><? //echo $row['ChineseName'] ?><?php echo $name; ?> </td>
<td> </td>
<script>
for(i=1;i<=31;i++){
document.write("<td><input type=\"checkbox\" name=\"checkbox[<?php echo $key; ?>][]\" value=" + i + " /></td>");
}
</script>
</tr>
<?php } ?>
</table>
<p align="center">
<input type="reset" value="重置">
<input type="submit" value="提交">
</p>
</form>
</body>
</head>
</html>
<pre>
<?php
/*
* 插入数据过程我就不写了(因为我没有你的数据库结构),只写出提交后数据结果吧
* $_POST数组自己提取数据吧,日期为 $_POST['checkbox'] 取出某个人的日期数组
* 写了这么多,不为别的,只为200分,我希望你懂的
* Contact Me Please view my Baidu Username
* Good Luck to you!
*/
if(isset($_POST)){
print_r($_POST);
}
?>
</pre>
运纵j4
2012-01-16 · TA获得超过621个赞
知道小有建树答主
回答量:245
采纳率:0%
帮助的人:52.5万
展开全部
错误挺多的,
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
没闭合标签,没指定编码,
<td><input type="radio" name="checkbox" value="1"></td>
<td><input type="radio" name="checkbox" value="2"></td>
<td><input type="radio" name="checkbox" value="31"></td>
单选用radio,名字相同。你这个年月日,日也用下拉列表好点吧。
然后是最重要的一点。

<?php while ($row=@mysql_fetch_array($result)){?>
<td><?php
$i++;
echo $row['ChineseName'] ?> </td>
<td> </td>
<td><input type="radio" name="checkbox[<?php echo $i;?>][]" value="1"></td>
<td><input type="radio" name="checkbox[<?php echo $i;?>][]" value="2"></td>
<td><input type="radio" name="checkbox[<?php echo $i;?>][]" value="31"></td>

</tr>
<?php }?>
$i++是计数器,。你代码设计的较乱,只能这样拼尸。
然后1.php里面类似这样写。

<?php
$day = $_POST['checkbox'];

foreach($day as $key=>$value){
mysql_query('insert into .....'.$value[0]);
}
?>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
边里唯士君
2012-01-10 · TA获得超过462个赞
知道答主
回答量:209
采纳率:0%
帮助的人:65.4万
展开全部
var radiogroup = 'orm1.tblid;
if (radiogroup){
for(i = 0; i < radiogroup.length; i++){
var radio = radiogroup[i];
if (radio.checked == true){
ret = radio.value;
如何将同时选中的多个checkbox里面的id值传给del.php页面进行数据处理?因为你把checkbox的name="id"改为name="id[]" 在接收页面del.php中用$id=$
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
stv_
2012-01-05 · TA获得超过117个赞
知道小有建树答主
回答量:151
采纳率:77%
帮助的人:53.7万
展开全部
达到效果的方法还是有一些的
比如,你就可以使用数组与字符串之间相互转换来实现:
定义个数组arr(30),当选中时arr值为1,不选中值为0,最终得到0,1,0,1,0,0,...这些,最后把数据转换为字符串,存入数据库,读取的时候再把字符串转换为数组来显示就可以了
追问
具体代码能写下吗?谢谢了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rowing82
2012-01-05 · TA获得超过138个赞
知道答主
回答量:270
采纳率:0%
帮助的人:143万
展开全部
如何将同时选中的多个checkbox里面的id值传给del.php页面进行数据处理?因为你把checkbox的name="id"改为name="id[]" 在接收页面del.php中用$id=$
追问
我不是很清楚,麻烦能写下代码吗?我是新手
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式