2011-11-18 35 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

没问题贾斯珀,发生在我们所有的朋友! –

相关问题