Para empezar... como es que deseas que $accion sea numérico y lo inicializas como cadena vacía?
Debería ser: $accion = 0;
Luego, en ($accion = $cantidad), PHP va a evaluar si cantidad se asignó correctamente a action... siempre va a evaluar verdadero, siempre va a entrar al if. Para comparar debes usar doble signo igual:
if($accion == $cantidad)
Continuando, para que vuelva a repetirse el proceso, dentro del if debes volver a poner $accion en cero, reiniciando el conteo.
Para finalizar, tienes $accion y $action... cuál de las dos usarás?
Ahhh, se me olvidaba... ese for está sobrando, porque se supone que el ciclo lo haces con while y debes inicializar $accion antes de entrar ahí.