Signs and symptoms may start within hours after eating the contaminated food, or they may begin days or even weeks later. Sickness caused by food poisoning generally lasts from a few hours to several days.