Mam problem z pobraniem danych w postaci tablicy wielowymiarowej
), ) );
czyli potrzebuję takiej tablicy pobranej z bazy:
Kod
array(2) {
["Odzial 1"]=>
array(1) {
[0]=>
array(4) {
["pracownik_id"]=>
string(2) "33"
["name"]=>
string(18) "Zdzichu Zprzesieki"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "Z"
}
}
["odzial 2"]=>
array(2) {
[0]=>
array(4) {
["pracownik_id"]=>
string(2) "11"
["name"]=>
string(12) "Jan Kowalski"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "Z"
}
[1]=>
array(4) {
["pracownik_id"]=>
string(3) "892"
["name"]=>
string(15) "Zuzanna Kiepska"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "S"
}
}
}
["Odzial 1"]=>
array(1) {
[0]=>
array(4) {
["pracownik_id"]=>
string(2) "33"
["name"]=>
string(18) "Zdzichu Zprzesieki"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "Z"
}
}
["odzial 2"]=>
array(2) {
[0]=>
array(4) {
["pracownik_id"]=>
string(2) "11"
["name"]=>
string(12) "Jan Kowalski"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "Z"
}
[1]=>
array(4) {
["pracownik_id"]=>
string(3) "892"
["name"]=>
string(15) "Zuzanna Kiepska"
["pesel"]=>
string(11) "************"
["FZ"]=>
string(1) "S"
}
}
}
Niestety zwykłe złączenia dają "płaską" tablicę asocjacyjną.
SELECT Odzialy.name AS oddzial,Odzialy.id AS id_odzialu, pracownik.id AS pracownik_id,pracownik.name AS Imie_i_nazwisko, kadry.PESEL AS pesel, kadry.Rodzaj_umowy AS Zatrudnienie FROM p_users AS centrala JOIN p_emp_ptc AS PTC ON centrala.id=PTC.cuid JOIN p_users AS Odzialy ON PTC.puid=Odzialy.id JOIN p_user_usergroup_map AS map ON Odzialy.id=map.user_id JOIN p_emp_ptp AS ptp ON Odzialy.id=ptp.pracodawca JOIN p_users AS pracownik ON pracownik.id=ptp.id JOIN p_emp_kadry AS kadry ON pracownik.id=kadry.id WHERE centrala=5002;
Oczywiście można to zrobić przy pomocy php ale nie o to mi chodzi.
Mam nadzieję, że nie zagmatwałem zbytnio problemu. Z góry dziekuję za pomoc.
(Nazwiska są fałszywe i służą tylko prezentacji problemu)