2017-06-05 72 views
-1

我有下面表表示:行插入与复选框

<form method="post" action="insertassign_process.php"> 
      <table class="table table-bordered table-responsive"> 

     <?php 
     echo"<thead> 
       <tr><th>Tenant ID</th> 
        <th>Tenant ZIP</th> 
        <th>Process server ID</th> 
        <th>Process Server Name</th> 
        <th>Phone Nmuber</th> 
        <th>Select Process Server</th> 
        <th>Assign Proces Server</th> 
        </tr> 
       </thead>"; 
     include("connection.php"); 
     extract($_REQUEST); 
      $SQLSELECT = "SELECT * FROM users where zip_codes='$zip'"; 
      $result_set = mysql_query($SQLSELECT) or die(mysql_error()); 
      while($row = mysql_fetch_array($result_set)) 
      { 
      ?> 

       <tr> 
        <td><input type="text" readonly name="t_id[]" value="<?php echo $t_id; ?>"/></td> 
        <td><input type="text" readonly name="zip[]" value="<?php echo $zip; ?>"/></td> 
        <td><input type="text" readonly name="pr_id[]" value="<?php echo $row['id']; ?> "></td> 
        <td><input type="text" readonly name="fullname[]" value="<?php echo $row['first_name'].' '.$row['last_name']; ?>"</td> 
        <td><?php echo $row['phone_no']; ?></td> 
        <td><input type="checkbox" name="name[]" select="selected" value="<?php echo $row["t_id"]; ?>" /></td> 
        <td><input type="radio" name="assign_process" value="1" /></td> 
       </tr> 
      <?php 
      } 
     ?> 

    </table><button type="submit" class="btn btn-primary button-loading" name="submit" data-loading-text="Loading...">Submit</button></form> 

现在,当我检查任何复选框(可以是多选择),那么选择的该行的将被插入另一个表中的数据。我的查询插入是:

 <?php 
     session_start(); 
     include("connection.php"); 
     extract($_SESSION); 
     extract($_POST); 
     if(isset($_POST["submit"])==true) 
     { 
     $counter = count($_POST["name"]); /* COUNT THE PASSED ON NAME */ 

     for($x=0; $x<=$counter; $x++){ 

     if(!empty($_POST["name"][$x])){ 
     $CUSTOMER_NAME = mysql_real_escape_string($_POST["t_id"][$x]); 
     $PI_ADDRESS = mysql_real_escape_string($_POST["pr_id"][$x]); 


     $qry="INSERT INTO select_process (id,tenant_select_id,process_select_id) VALUES ('','$CUSTOMER_NAME','$PI_ADDRESS')"; 
     mysql_query($qry); 

     } /* END OF CHECKING THE CHECKBOX IF SELECTED */ 

     } /* END OF FOR LOOP */ 
     } 
     else{ 

     echo"error"; 
     } 
     ?> 

但是,当我选择多行或任何然后它只插入第一行数据。

+0

请停止使用PHP的过时mysql_ API – Strawberry

回答

-1

你试图插入空值到id,我认为你的id字段是主键,所以它不能重复,我会建议让你的id键主自动增量,并写下你的代码 -

<?php 
    session_start(); 
    include("connection.php"); 
    extract($_SESSION); 
    extract($_POST); 
    if(isset($_POST["submit"])==true) 
    { 
    $counter = count($_POST["name"]); /* COUNT THE PASSED ON NAME */ 

    for($x=0; $x<=$counter; $x++){ 

    if(!empty($_POST["name"][$x])){ 
    $CUSTOMER_NAME = mysql_real_escape_string($_POST["t_id"][$x]); 
    $PI_ADDRESS = mysql_real_escape_string($_POST["pr_id"][$x]); 


     $qry="INSERT INTO select_process (tenant_select_id,process_select_id) VALUES ('$CUSTOMER_NAME','$PI_ADDRESS')"; 

    mysql_query($qry); 

    } /* END OF CHECKING THE CHECKBOX IF SELECTED */ 

    } /* END OF FOR LOOP */ 
    } 
    else{ 

    echo"error"; 
    } 
    ?> 
+0

谢谢你的答复...... $ QRY =“INSERT INTO select_process(ID,tenant_select_id,process_select_id)VALUES( '', '$ CUSTOMER_NAME',”$ PI_ADDRESS ')“这里的id是主键和自动启动。但问题是一样的 –

+0

请帮助任何一个....我浪费了4小时这个代码 –

+0

如果我选择所有的行,然后它插入正确...但如果少于所有行比只有第一行插入。 –