2014-07-07 98 views
0

我有一個PHP頁面,其中查詢數據庫中的數據並將其放入表格中。第一列是我希望用戶將某人分配到該行的位置。我能夠成功地做到這一點(循環選擇),但現在我遇到了一個問題,當它被推送到另一個頁面。PHP和循環選擇

下面是第一頁:

$sql = "SELECT * FROM meetingDump WHERE Meeting_ID IN ($Series)"; 
$rs=odbc_exec($conn,$sql); 
while($row = odbc_fetch_array($rs)) 
{ 
$ID = odbc_result($rs,"ID"); 
$Meeting_ID = odbc_result($rs,"Meeting_ID"); 
$Title = odbc_result($rs,"Title"); 
$StartTime = odbc_result($rs,"StartTime"); 
$EndTime = odbc_result($rs,"EndTime"); 
$Organizer = odbc_result($rs,"Organizer"); 

echo '<tr> 
     <td>'; 
     { 
       $box1 = array(); 

       $result1 = "SELECT FullName FROM User"; 
        $rs1=odbc_exec($connu,$result1); 
       while($row = odbc_fetch_array($rs1)) { $box1[] = $row; } 
       } 
       /* Generate select box contents */ 
       $AssignedTo = '<select name="AssignedTo[]" onchange="autoSubmit()">'; 
       $AssignedTo .= '<option selected="selected">---< Select Engineer >---</option>'; 
       if (!empty($box1)) { 
        foreach ($box1 as $k => $v) { 
         $AssignedTo .= '<option value="'.$v['FullName'].'">'.$v['FullName'].'</option>'; 
        } 
       } 
      $AssignedTo .= '</select>'; 
      /* Output */ 
      echo $AssignedTo; 

     echo ' 
     </td> 
     <input name="AssignedID[]" type="hidden" value="' . $ID . '" /> 
     <td>' . $Meeting_ID . '</td> 
     <td>' . $Title . '</td> 
     <td>' . $StartTime . '</td> 
     <td>' . $EndTime . '</td> 
     <td>' . $Organizer . '</td>'; 

}

現在到了第二頁我目前有:

foreach($_POST['AssignedTo'] as $AssignedTo) 
{ 
echo '<br>' . $AssignedTo; 
} 

這讓我所有選定的名字,這是完美的,但我試圖關聯assignTo字段與meeting_id字段。

任何想法?

更新: AeroX的評論幫我弄明白了!

$AssignedID = $_POST['AssignedID']; 
$AssignedTo = $_POST['AssignedTo']; 

foreach ($AssignedID as $Key => $value) 
{ 
echo $AssignedID[$Key] .' '. $AssignedTo[$Key]; 
echo '<br>'; 
} 
+0

我相信'$ _ POST [ 'AssignedTo']'&'$ _ POST [ 'AssignedID']'應該包含一個數字索引的數組。如果你得到數組的長度並且遍歷它,在這個例子中,兩個數組中的鍵匹配都應該是相關的id。 – AeroX

+0

這樣做!如果你想發佈它作爲答案......我可以標記它。 – yusof

回答

0

在你的榜樣,因爲路POST變量$_POST['AssignedID']$_POST['AssignedTo']將被填充你可以從每個陣列,他們既要有匹配的密鑰拉動價值。這會給你相關的記錄。

類似下面的應該爲你工作:

$AssignedID = $_POST['AssignedID']; 
$AssignedTo = $_POST['AssignedTo']; 

foreach(array_keys($AssignedID) as $Key) 
{ 
    echo $AssignedID[$Key]; 
    echo $AssignedTo[$Key]; 
}