2016-02-05 17 views
0

我使用while loopHTML table中從DB中生成一組用戶。這個想法是,用戶將選擇'添加用戶'按鈕,運行a query將該行添加到相關項目。然而,我不知道如何告訴查詢要添加哪一行數據。有什麼建議麼?如何識別用戶在我的表格中選擇的行?

<table width="100%" cellpadding="5" cellspacing="5" > 
      <p><strong>Search Results:</strong></p> 
      <tr> 
       <td></td> 
       <td><strong>First Name</strong></td> 
       <td><strong>Last Name</strong></td> 
       <td><strong>Job Role</strong></td> 
       <td><strong>Skill(s)</strong></td> 
      </tr> 
      <?php 
         if(isset($_POST['search'])){ 

         if(@mysqli_num_rows($search_query)!=0){ 
          do{ 
          ?> 
<tr> 
       <td> 
       <form action="AddUserToProject.php?id=<?php echo urlencode($Project); ?>" method="post" id="addform"> 
        <input type="submit" name="adduser" value="<?php echo htmlspecialchars($search_rs['UserID']); ?>"/> 
       </form> 
       </td> 
       <td><?php echo $search_rs['Fname']; ?></td> 
       <td><?php echo $search_rs['Lname']; ?></td> 
       <td><?php echo $search_rs['JobRole']; ?></td> 
       <td><?php echo $search_rs['Description']; ?></td> 
      </tr> 
      <?php 

      } while ($search_rs=mysqli_fetch_assoc($search_query)); 
          } else { 
           echo "No results found"; 
          }} 

      if(isset($_POST['adduser'])) 
      { 
        $AddUserID = $search_rs['UserID']; 
        $AddProjectID = $Project; 

        $sql = $con->query("INSERT INTO userprojects 
            (UserID, ProjectID) 
            VALUES 
            ('$AddUserID', '$AddProjectID')") 
            or die(mysqli_error($con)); 
          } 
         ?> 
      </table> 

搜索=我上面的搜索字段。

+0

也許把表格放在表格中,然後爲每一行添加一個複選框或單選按鈕,並將其作爲一個值設置行ID或用戶ID,並讓該過程 – SuperDJ

回答

0

當您按下'adduser'按鈕時,它會發布表單數據。 user_id似乎存儲爲'adduser'按鈕的值。因此:

變化:

$AddUserID = $search_rs['UserID']; 

要:

$AddUserID = $_POST['adduser']; 

不要忘記清潔您的文章數據的安全性。

+0

啊!非常感謝你:) – user2258597

+0

嗯只是注意到了一些事情。它是兩次添加行,任何想法爲什麼它這樣做? – user2258597