The duration of the stomach flu can vary. The symptoms may get better after a few days, but in some cases, a person may be sick with the infection can last for several days, up to 10. Food poisoning symptoms usually last anywhere from several hours, a day or two, or up to a several days.