First let's start with something we already done here and extend our knowledge. Take a look at previous posts about circular movement in ActionScript 3.0:
How to orbit in AS
Making orbit trails in Flash
Using drawing API for orbit like shapes
Elliptic movement in AS3

Ellipse has center point C(x0,y0) and two fixed points F1 and F2. Distances from F1 and F2 are r1 and r2. You can think of circular movement as special case of ellipse movement where values a and b are equal (a=b).
Thus, based on previous examples we can write code for finding position of point moving along elliptic curve.
var posX:Number = planet.x + Math.cos(radians) * a;
var posY:Number = planet.y + Math.sin(radians) * b;
Instead of single radius parameter in orbit function, ellipse function has two parameters a and b.
function ellipse(planet:MovieClip, sat:MovieClip, a:Number, b:Number, speed:Number):void
{
var currentDegrees:Number = 0;
this.addEventListener(Event.ENTER_FRAME, doEveryFrame);
function doEveryFrame(event:Event):void
{
currentDegrees += speed;
var radians:Number = getRadians(currentDegrees);
var posX:Number = planet.x + Math.cos(radians) * a;
var posY:Number = planet.y + Math.sin(radians) * b;
sat.x = posX;
sat.y = posY;
}
function getRadians(degrees:Number):Number
{
return degrees * Math.PI / 180;
}
}
That's all. You can replace orbit function with ellipse one in previous trails examples and it will work perfectly.
*_*