2011-11-02 25 views
0

這可能是讓人有些困惑,但嘗試按照...拉一個ID,並與相應的名稱替換它不同的表

所以我有一個數組和foreach部分下方

所列
foreach($rows as $record){ 
$directorid = $record[director]; 


echo " 

<tr class='row'><td width='74'><a href='workimgedit.php?id=$record[wid]'><div  class='workthumb'><img src='../img/work/$record[image]' class='wthumb'></div></td><td>$record[title] - $record[subtitle]</td><td>Director: $directorname, $record[crew1]</td> 
<td>$record[player]</td><td>$record[code]</td> 
<td class='link'><a href='workedit.php?id=$record[id]'>Edit</a></td> 
</tr><tr class='offrow'><td colspan='6'></td></tr> 
"; 
}; 

,我需要的$directorid改變那個人,而不是ID的實際名稱,所以我需要鏈接到該表的first_namelast_name但我在顯示另一個表中的行的中間。

有沒有辦法做到這一點?

回答

0

一個簡單的解決方法可能只是繼續前進,其他表與姓氏和名字保存在「directorsArray」。然後,你可以通過它每次你需要抓住和名稱,並插入基於匹配的ID的正確數據的時間迭代。

  1. 設置一個「directorsArray」使用的是MySQL SELECT查詢
  2. 將一個for循環,現有的代碼中通過陣列迭代

我會假設你可以自己做的第1步,但這裏是第2步...

foreach($rows as $record){ 
    $directorid = $record[director]; 

    for($i=0;$i<count($directorsArray);$i++){ 
     if($directorsArray[$i]["directorId"]==$directorId){ 
      $directorName = $directorsArray[$i]["first_name"]." ".$directorsArray[$i]["last_name"]; 
     } 
    } 
    //...now you can echo "$directorName" 
    echo "The director's name is: $directorName"; 

    echo " 
    <tr class='row'><td width='74'><a href='workimgedit.php?id=$record[wid]'><div class='workthumb'><img src='../img/work/$record[image]' class='wthumb'></div></td><td>$record[title] - $record[subtitle]</td><td>Director: $directorname, $record[crew1]</td> 
    <td>$record[player]</td><td>$record[code]</td> 
    <td class='link'><a href='workedit.php?id=$record[id]'>Edit</a></td> 
    </tr><tr class='offrow'><td colspan='6'></td></tr> 
    "; 
}; 

這可能是更好的嘗試然而使用MySQL JOIN聲明。看看這個問題:PHP MySQL Select ID from one table and information from another table

相關問題