Du overskriver arrayet inde i foreach
på hver iteration. Dette betyder i det væsentlige, at arrayet tømmes ved hver iteration. Arrayet vil kun indeholde værdierne fra den sidste iteration. Flyt $temp = array();
erklæring uden for løkken for at rette dette:
$temp = array(); // intialize the array
foreach($result as $r) {
$temp[] = array(
'id' => (int) $r['id_tabele'],
'ime_prezime' => (string) $r['naziv']
);
}
Ovenstående rettelse vil få din kode til at fungere, men jeg anbefaler at bruge fremgangsmåden ved hjælp af SQL-aliaser som vist i @YourCommonSense 's svar under.