Stai sovrascrivendo l'array all'interno di foreach
su ogni iterazione. Ciò significa essenzialmente che l'array viene svuotato ad ogni iterazione. L'array conterrà solo i valori dell'ultima iterazione. Sposta il $temp = array();
dichiarazione al di fuori del ciclo per risolvere questo problema:
$temp = array(); // intialize the array
foreach($result as $r) {
$temp[] = array(
'id' => (int) $r['id_tabele'],
'ime_prezime' => (string) $r['naziv']
);
}
La correzione di cui sopra farà funzionare il tuo codice, ma ti consiglio di utilizzare l'approccio utilizzando alias SQL come mostrato in @YourCommonSense risposta di sotto.