Why do you say j'ai mangé instead of j'ai manger?
I might not be an expert, but just thinking logically (and translating literally): J'ai mangé. (I have eaten) "Mangé" meaning "eaten". But when you say "J'ai manger" it would literally be translated as "I have eat", because "manger" is the infinitive.
That's a very basic grammar concept. The past tense (passé composé) of a verb in -er is être or avoir + the past participle, -é.
- Je suis allé.
- J'ai mangé. Etc etc
Note the use of the accent on é. It's there for a reason, too.
You don't say "j'ai mange" mais "j'ai mangé". It is the past participle of "manger". J'ai manger* amounts to saying "I have do".
Because the French language has rules!
"Mangé" = "eaten" (= past participle of "eat") in English. "J'ai" = "I have", as in either physical possession or "I have " in the past.
This implies that "J'ai mangé" = "I have eaten"!
The best way of seeing how wrong "J'ai manger" is to consider its best semi-literal translation which is "I must to eat".
"I must eat" = "Je dois manger" (which also means "I have to eat") so there is no translation of your phrase which makes sense in English!