Low transmission fluid:
Check the transmission fluid level and add fluid if necessary.
Vacuum leak: Check the vacuum hose that connects the transmission to the intake manifold. If the hose is cracked or disconnected, it can cause the transmission to not shift properly.
Bad shift linkage: The shift linkage is what connects the gearshift lever to the transmission. If the shift linkage is loose or damaged, it can cause the transmission to not shift properly.
Faulty transmission mount: A faulty transmission mount can cause the transmission to move around excessively, which can interfere with shifting.
Internal transmission problems:
If the transmission fluid is full, there are no vacuum leaks, the shift linkage is properly adjusted, and the transmission mount is good, then the problem may be within the transmission itself. This could include worn synchronizers, damaged gears, or a faulty valve body.