Cita: yo tengo esto echo pero solo me sale el ultimo ID
Bueno, tu error es que en cada vuelta del while() sobreescribes la variable $temp y eso en definitiva está mal.
Debes ir acumulando cada valor en un array, para eso debes crear el array antes del while() y en cada vuelta agregas el valor al array.
Al final sólo debes devolver el array y nada más.