C#, Unity 2017.2.0f3, Rotating RigidBodyFPS Controller 90 and -90 degrees on button press?

My current code attached to the Player One RigidbodyFPSController in Standard Assets is as follows:

// Update is called once per frame
void Update () {
    //rotate the player with Q and E
    if (Input.GetKeyDown("q"))
    {
        transform.Rotate(0, 90, 0);
    }

    if (Input.GetKeyDown("e"))
    {
        transform.Rotate(0, -90, 0);
    }
}

However, when actually pushing the buttons, the player seems to snap back to how they were facing and not rotating. How do I get it to do what I want?

I would highly suggest reading Unity - Scripting API: Transform.Rotate to fully understand what Rotate() does

The code you’re looking for is more along the lines of

if (Input.GetKey(KeyCode.Q))
    transform.Rotate (0, 1 * time.DeltaTime * speed, 0);
if (Input.GetKey(KeyCode.E))
    transform.Rotate (0, -1 * time.DeltaTime * speed, 0);

Speed is how fast/slow you want it to rotate