I have a 2003 honda civic an my car starts, I can't move car stays in drive an just rev?

I wonder what it can be my check engine light came on

In order of increasing cost it could be:
a) Transmission fluid level is low or the fluid is contaminated;
b) The transmission control mechanism is broken (not shifting the transmission into drive when you move the shifter);
C) Transmission rebuild needed.