Deberías hacer algo como esto:
$data = array();
while($row = $db->database_fetch_assoc($query))
{
$data[] = $row;
}
Ahora $datos es una matriz donde cada elemento es una fila del resultado de la consulta.
Luego puede acceder a las filas como $datos[0], $datos[1] y a los elementos dentro de las filas como $datos[1]['paquete'], $datos[0]['tipo de elemento'], porque cada fila es una matriz asociativa.
Puede obtener el número de filas devueltas utilizando count($data).