2011-11-18 38 views
1

我有一個mysql數據庫與那些列id,idUser,idCompany,idProfession for users表。使用不同的值填充來自mysql的php數組爲相同的數組索引

現在我將選擇所有這些字段,使被建立在這樣的陣列: 陣列[ID用戶所] =陣列[ID => X,idCompany => XX,idProfession => XXX)

對於示例1用戶可以爲更多公司工作並做不同的職業。 因此,每個數組[idUser]可以有多個數組(id,idCompany,idProfession),並且每個idUser都有1個結果,而相同的idUser則有多個結果。

現在,我做了查詢後,我寫了這段代碼,但當然id不做我想做的事情,因爲它總是取代與另一個相同的元素導致while循環。

$data=array(); 
$sql_result="SELECT etc..........."; 

    while($rows = mysql_fetch_array($sql_result,MYSQL_BOTH)){ 
     $data[idUser] = array('idCompany' => $rows['idCompany'], 'profession' => $rows['idProfession']); 

我想在while中做一個for循環,將數據存儲在一個tmp數組中。我不得不停止因爲我不明白該怎麼做。

回答

1

這是做你想做的嗎?

$users=array(); 
$sql_result="SELECT * FROM users"; 

while($row = mysql_fetch_array($sql_result,MYSQL_BOTH)){ 
    $users[ $row['idUser'] ][] = array('idCompany' => $row['idCompany'], 'profession' => $row['idProfession']); 
} 

這將填充像這樣的數組:

array(
    idUser => array(
     array('idCompany', 'profession'), 
     array('idCompany', 'profession'), 
     etc.. 
    ) 
) 
+0

謝謝,我覺得只是一個白癡:d很簡單!謝謝 – Jasper

+0

沒問題賈斯珀,發生在我們所有的朋友! –

相關問題