A North Carolina high school teacher has been charged after being found with weapons and drugs on school grounds, according to the Union County Sheriff's Office.