Despite the fact that the circuit you have is completely wrong, there is one fundamental thing that is stopping you using a PNP transistor.
With an NPN transistor you have to raise the voltage on the base above the ground voltage (this voltage is called V_BE, the Voltage between Base and Emitter). Typically that voltage is around 0.7V.
With an PNP, because the emitter is wired to your 9V rail, V_BE must therefore be relative to 9V, not ground, so the voltage on the base must be less than 0.7V below 9V to turn on. Which in itself is fine - a LOW will be around 0V, which is about 9V less than 9V. So it will turn on. The problem comes when you want to turn it off. You need to get the base voltage above 8.3V (9V - 0.7V), and that is impossible for an Arduino to do.
So normally a PNP transistor is switched by using an NPN transistor to switch the base of the PNP between 9V (pulled up through a resistor) and 0V (switched through the NPN).
And that then becomes pretty much pointless, since you are then adding a second, NPN, transistor, and you could just as well use the NPN alone to switch the motor, making the PNP completely redundant.