@JohnPlayzRoblox421 solution is right, except the Y axis must remain the same otherwise the character rotates vertically, usually resulting in flinging just like it happened to you.
Try this:
local playerPos = Player.Character:GetPivot().Position
local ehrp = eHRP.Torso
Player.Character.PrimaryPart.CFrame = CFrame.lookAt(playerPos, Vector3.new(ehrp.Position.X, playerPos.Y, ehrp.Position.Z))