The blast took place at about 2 a.m. in a parking lot of a supermarket in the city, Xinhua quoted a local Urdu TV channel Geo as saying in a report.
The suicide bomber blew himself up while he was stopped by a security guard at the market, it said.
Rescue team and police rushed to the site shortly after the blast was reported.
The injured have been shifted to the Polyclinic Hospital in the city. Conditions of the injured are not known at this moment.
Earlier, a local TV channel said two blasts hit the city, but most local media put the number at one.