duanli9591 2010-11-23 13:51
浏览 71
已采纳

通过复选框插入

I'm trying to insert via checkbox, but it saves only one record, suppose in the table I've got 10 records, it saves only the 10th one. I think there is a problem in the for each. Can anyone help me?

<form id="assign" name="assign" method="post" action="assign_individual_exec.php">

    <tr><td class="style3">Select course name:</td>
    <td><select name="name" class="principal2"><?php select_coursename(); ?></select></td></tr>
    <tr><td class="style3"> Start Date</td>
<td><input type="date" name="sdate" ></td><td><script language="JavaScript">
    new tcal ({
        'formname': 'assign',

        'controlname': 'sdate'
    });

    </script></td></tr>



<?php

include('member_table.php');
?>

    <tr>
      <div align="right"class="lien">

        <td><input type="submit" name="individual" value="assign to individual"  />

member_table.php

<?php


$member_id = $_SESSION['SESS_MEMBER_ID'];

   $first= mysql_query("select userid from dept_user where lead_id=$member_id");

echo "<table border='1' id=coursetable class=coursetable>
<tr>
<th>first name</th>
<th>last name</th>
<th>dept name</th>
<th>title</th>
<th>rolename</th>
<th>leader first name</th>
<th>leader last name</th>
</tr>";

 while($res = mysql_fetch_array($first)){

$user1 = $res['userid'];


$display= mysql_query("Select user.firstname, user.lastname, department.dept_name, job_title.title, role.rolename, user.userid From user Inner Join  dept_user On user.userid = dept_user.userid Inner Join  department On department.dept_id = dept_user.dept_id Inner Join  job_title On job_title.title_id = user.titleid Inner Join  role On role.roleid = user.roleid Where user.userid = $user1 "); 




$leader = mysql_query("Select firstname , lastname From user Inner Join  dept_user On user.userid = dept_user.lead_id  Where dept_user.lead_id =$member_id");

while(($row1 = mysql_fetch_array($display)) and ($lead = mysql_fetch_array($leader)))

  {

  echo "<tr>";
  echo "<td>" . $row1['firstname'] . "</td>";
  echo "<td>" . $row1['lastname'] . "</td>";
  echo "<td>" . $row1['dept_name'] . "</td>";
  echo "<td>" . $row1['title'] . "</td>";
echo "<td>"  . $row1['rolename'] . "</td>";
echo "<td>"  . $lead['firstname'] ."</td>";
echo "<td>"  . $lead['lastname'] . "</td>";
echo  "<td>" .'<input type="checkbox" name="userid" value='.$row1['userid'].'>'."</td>";
  echo "</tr>";

  }

 if ($user1 !== 0){

 $second = mysql_query("select userid from dept_user where lead_id=$user1");

 while($res1 = mysql_fetch_array($second)){

 $user2= $res1['userid'];



if($user2 !==0) {



   $display2 = mysql_query("Select user.firstname, user.lastname, department.dept_name, job_title.title, role.rolename, user.userid From user Inner Join  dept_user On user.userid = dept_user.userid Inner Join  department On department.dept_id = dept_user.dept_id Inner Join  job_title On job_title.title_id = user.titleid Inner Join  role On role.roleid = user.roleid Where user.userid = $user2 "); 


   $leader1= mysql_query("Select firstname , lastname From user Inner Join  dept_user On user.userid = dept_user.lead_id  Where dept_user.lead_id = $user1");

while(($res1 = mysql_fetch_array($display2))  and ($lead1 = mysql_fetch_array($leader1)))

  {
  echo "<tr>";
  echo "<td>" . $res1['firstname'] . "</td>";
  echo "<td>" . $res1['lastname'] . "</td>";
  echo "<td>" . $res1['dept_name'] . "</td>";
  echo "<td>" . $res1['title'] . "</td>";
echo "<td>"  . $res1['rolename'] . "</td>";
echo "<td>"  . $lead1['firstname'] . "</td>";
echo "<td>"  . $lead1['lastname'] . "</td>";
echo  "<td>" .'<input type="checkbox" name="userid" value='.$res1['userid'].'>'."</td>";
  echo "</tr>";
  }

    if ($user2 !== 0){

    $third = mysql_query("select userid from dept_user where lead_id=$user2");

while($res2 = mysql_fetch_array($third)) {

 $user3 = $res2['userid'];

 echo "<br/>";

 if ($user3 !== 0){


 $display3 = mysql_query("Select user.firstname, user.lastname, department.dept_name, job_title.title, role.rolename, user.userid From user Inner Join  dept_user On user.userid = dept_user.userid Inner Join  department On department.dept_id = dept_user.dept_id Inner Join  job_title On job_title.title_id = user.titleid Inner Join  role On role.roleid = user.roleid Where user.userid = $user3"); 

    $leader2 = mysql_query("Select firstname, lastname From user Inner Join  dept_user On user.userid = dept_user.lead_id  Where dept_user.lead_id = $user2");

while(($row = mysql_fetch_array($display3)) and ($lead2 = mysql_fetch_array($leader2)))


  {

  echo "<tr>";
  echo "<td>" . $row['firstname'] . "</td>";
  echo "<td>" . $row['lastname'] . "</td>";
  echo "<td>" . $row['dept_name'] . "</td>";
  echo "<td>" . $row['title'] . "</td>";
echo "<td>"  . $row['rolename'] . "</td>";
echo "<td>"  . $lead2['firstname'] . "</td>";
echo "<td>"  . $lead2['lastname'] . "</td>";
echo  "<td>" .'<input type="checkbox" name="userid" value='.$row['userid'].'>'."</td>";
  echo "</tr>";
  }

}
    }
}
}
}

}
}
echo"</table>";
?>

assign_training_exec.php

<?php
include('include.php'); 
    include('config.php');
    require_once('auth.php');
    session_start();


$user[]= clean($_POST['userid']);
    $name = clean($_POST['name']);
    $date = clean($_POST['sdate']);
$month = substr($date, 0 ,2);
 $day= substr($date, 3, -5); 
$yr = substr($date, 6); 
$dash = "-";
$date_str = ($yr.$dash.$month.$dash.$day);


$m_name = $_SESSION['SESS_FIRST_NAME'];

   foreach ($user as $user_array){
    $insert_query = "INSERT INTO course_detail(userid, course_id, date_assign, owner) VALUES('$user_array','$name','$date_str', '$m_name')"; 
    $insert = mysql_query($insert_query); 
}



    if($insert_buffer) {

                exit();
    }else {
        die("Query failed");
    }

?>
  • 写回答

5条回答 默认 最新

  • duanchi0897 2010-11-23 14:35
    关注

    Change this line in *member_table.php* :

    (current line :)

    echo  "<td>" .'<input type="checkbox" name="userid" value='.$row1['userid'].'>'
    

    change to :

    echo  "<td>" .'<input type="checkbox" name="userid[]" value='.$row1['userid'].'>'
    

    The [] in the input's name attribute enable to iterate through it.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算