It can work, but you have to connect all four bases with a resistor to Arduino outputs.
Most of the time, it is used like this:
- One of the PNP-transistors is switched on.
- The opposite NPN-transistor (on the other side) is a PWM signal to regulate the speed of the motor.
If you want to turn the motor left and right, and control it with PWM, you have to use 4 Arduino pins, or use a special ic (that ic might also need 4 pins of the Arduino).
If you want to turn the motor left and right,
without PWM, just two Arduino pins are needed, but the H-bridge needs 8 transistors, or 4 transistors with the emitter connected to the motor, to make it safer.
Here is such a 'safe' version with the emitter connected to the motor:
http://amitraj.webs.com/roboticsfordummies.htm