Вот если вынести Форму из PHP в HTMl работать должно да?
Ясный пень, что должно. Более того - это дело вкуса, но с моей точки зрения, это не только можно, но и всегда желательно (т.е. отделять мух от котлет).
Ты километры кода не рисуй.
Совет тебе не для твоих изысканий, я в общем для всякого такого, как наверху.
Сделай форму, проверь, что она в сценарий передаёт, и потом работай с этим самым сценарием.Эта функция mail() настолько проста, что читать твои километры логики кода вряд ли у кого встанет настроения, потому как по хорошему там и ошибки, кроме как синтаксической. быть не может. Гы.
А не хочет постоянно говорит что ошибка в mail()
Так что, если ты совета хочешь - не километр давай, а конкретно твою ошибку. Впрочем, может ты её со словарём прочитаешь, и сразу врубишься (типа где собака зарыта)