免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 6138 | 回复: 8
打印 上一主题 下一主题

PHP页面间的传值问题,复选框及表单等 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2012-01-10 15:38 |只看该作者 |倒序浏览
本帖最后由 leigaiting 于 2012-01-10 15:54 编辑

直接正题:
从数据库test表中循环读取人名,然后用户选择日期,提交后数据存入新的表test1中,test1结构:username,year,month,date,如何把1.php中用户的选择结果存入test1中呢?我的一个想法是从test表中循环读取出来的所有人名,关键的问题是复选框的命名问题,从test表中读取的人名,每个人后面跟了checkbox1到checkbox31,这些人的checkbox名字都是重复的,所以另一个网页没有办法区分checkbox的值,请问有没有什么办法?可以建表,可以修改表,只要能实现就行。
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>
效果见图片

aa18972b0f743a84e6cd4095.jpg (76.53 KB, 下载次数: 93)

效果图片

效果图片

论坛徽章:
0
2 [报告]
发表于 2012-01-11 03:56 |只看该作者
把checkbox的name跟上前缀后后缀,这个前后缀可以是user的id。。

论坛徽章:
0
3 [报告]
发表于 2012-01-11 08:32 |只看该作者
回复 2# 紫月亮


   可这个方法如何在HTML和PHP的混合语言中实现呢?我是个新手,能否给段关键的代码?谢谢了

论坛徽章:
0
4 [报告]
发表于 2012-01-15 00:57 |只看该作者
本帖最后由 紫月亮 于 2012-01-15 01:01 编辑

<?php
while ($row=@mysql_fetch_array($result)){
?>
balabala...
<input type="checkbox" name="xxx_<?php echo $row['user_id']; ?>" />

<?php
}
?>

论坛徽章:
0
5 [报告]
发表于 2012-01-15 01:50 |只看该作者
balabala...

论坛徽章:
0
6 [报告]
发表于 2012-01-15 13:27 |只看该作者
for循环

论坛徽章:
0
7 [报告]
发表于 2012-01-16 08:51 |只看该作者
本帖最后由 leigaiting 于 2012-01-16 08:53 编辑
紫月亮 发表于 2012-01-15 00:57
balabala...

可能我没有把意思表达清楚,我想在另一个网页中实现这样的功能,就是把第一个网页每个人对应的复选框的选择只都插入一个表test1中,test1的结构是username,year,month,date,其中date对应的就是第一个网页中复选框的值,按照您说的代码,我该怎么在第二个网页中调用第一个网页的复选框的值,并且把该值与人名对应起来呢?我的test表每人对应一个id,不是每个日期对应一个id的。

论坛徽章:
1
2015年辞旧岁徽章
日期:2015-03-03 16:54:15
8 [报告]
发表于 2012-01-18 15:52 |只看该作者
  <?php

  while ($row=@mysql_fetch_array($result)){

  ?>
    <td><? echo $row['ChineseName'] ?> </td>
    <td> </td>
    <td><input type="checkbox" name=<? echo $row['ChineseName'] . '1' ?> value="1"></td>
...
    <td><input type="checkbox" name=<? echo $row['ChineseName'] . '31' ?> value="31"></td>
  <?php }?>

论坛徽章:
0
9 [报告]
发表于 2012-01-23 22:57 |只看该作者
学习了啊。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP