How do I control an objects movement along a "path"?

Hey, I have a character, how do I make him run along a designated path (like a curve or something) but only when the keys are pressed? Like crash bandicoot or duke nukem manhattan project?

I’m thinking constraining the characters origin to the path, where it follows the path angle as well, but isn’t locked in the Z axis so the character can jump and fall, and when the move key is pressed, it moves say 1 BU per second.

Is it possible with Hooks?

I have zero knowledge of python, unfortunately, but can copy and paste and edit code pretty well.