Why does a us president have to be born in the US?

You do not have to be born in the US to be president. You are Constitutionally required to be a "natural-born" citizen, which means to be born on US soil or born on foreign soil to parents who were US citizens when you were born.