Use a larger screw in a plastic expansion anchor that doesn't hold. The screw has to have a wide enough shank to expand the anchor sufficiently for the barbed edges to catch on the drywall. It is also possible that the pilot hole you drilled is too wide. The hole should be small enough so that you have to tap the anchor into place with a hammer rather than simply push it in by hand.
Open the wings of a winged plastic anchor by inserting a wire or awl after you have place the anchor in the wall. You can buy a special tool for this purpose at the store where you purchase the anchors.
Drive the bolt partially into the sleeve of a metal toggle bolt with a screwdriver after you have inserted the sleeve in the wall. Pull the bolt out to expand the wings against the back of the drywall and then hold the sleeve out with pliers while you continue drive the bolt. Release the sleeve when the head of the bolt is about 1/2 inch from the wall and then drive it in the rest of the way.
Use a longer molly bolt if you are having trouble driving the bolt into the sleeve because the sleeve won't expand. If the molly bolt is the right length, the end of the sleeve expands outward and locks against the drywall when you drive the bolt. If it is too short, however, it pushes against the edges of the hole and won't open, making it difficult to drive the bolt.