Puedes hacerlo de dos formas (Ambas con javascript):
1 - Pre-cargar todo en un array javascript y manejar todo a través del frontend (Cuando el usuario selecciona un producto le muestras los demás datos que ya tienes cargados)
2 - Generar sólo el select con el id de producto y, ante un cambio en la opción seleccionada consultar al backend para traer los datos que te faltan y mostrarlos (esto se llama
ajax)
La ventaja de la primera opción es que va a ser más ágil (No hay que ir y venir al servidor, dependiendo de la conexión del usuario va a ser más veloz que la segunda) y algo más simple de programar.
La segunda opción tiene la ventaja de que siempre vas a estar viendo datos reales (En un ambiente de mucha concurrencia los datos que generaste en la opción uno pueden quedar obsoletos muy pronto y eso puede generarte problemas).
La decisión entre la opción 1 o la 2 depende mucho de lo que estás queriendo lograr.