What are the differences among food poisoning, gastroenetritis and diarrhoea?
First of all, diarrhea is a symptom, generally defined as passing large amount of loose stool. Diarrhea has countless causes, which include gastroenteritis and food poisoning (although not all types of gastroenteritis or food poisoning cause diarrhea).

Now the other two terms. Strictly speaking gastroenteritis refers to the inflammation of stomach/intestines, but clinically, it is most often used to refer to infection of stomach/intestines. Gastroenteritis is most often caused by viral infections e.g. rotavirus, noravirus, enterovirus, adenovirus... but can also be bacterial in origin.  

As for food poisoning, is usually defined as illness (usually gastrointestinal symtoms, including nausea, vomiting and diarrhea) caused by "poisoned food". Food poisoning can be caused by the presence of a microbial toxin (which can sometimes be heat-stable ie not inactivated by boiling/cooking). Examples include S. aureus enterotoxin, B. cereus enterotoxin, shigatoxin... There can be an overlap, when ingestion of food causes an infection of the gastrointestinal system, but gastroenteritis is not necessarily foodborne.

Hope that clarifies things.  

References for further info:
Food poisoning
Basics of acute viral gastroenteritis