Hey just saw linkman post this is a similar thread:
Moving platforms would probably be pretty easy. Essentially, you would need a bottom detector for the character, one that extends about 1 or 2 pixels below the character. For the platforms, they could each have a variable that has their speed. If the bottom detector is colliding with the platform, it can just add the platform's speed value to the X/Y speed value of the character.