Police in Allentown said 40-year-old Shawn Moser of Alburtis bought $20 worth of marijuana from a 16-year-old student at William Allen High School.
Moser was a security guard at Allen and a freshman football coach at Dieruff High School, also in Allentown.
The school district said he has since resigned.
Both the teen and Moser are facing charges.